mirror of https://github.com/WongKinYiu/yolov7.git
parent
0d1be18090
commit
a7fa81ff49
|
@ -0,0 +1,112 @@
|
||||||
|
# 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
|
||||||
|
|
||||||
|
# yolov7-tiny backbone
|
||||||
|
backbone:
|
||||||
|
# [from, number, module, args] c2, k=1, s=1, p=None, g=1, act=True
|
||||||
|
[[-1, 1, Conv, [32, 3, 2, None, 1, nn.LeakyReLU(0.1)]], # 0-P1/2
|
||||||
|
|
||||||
|
[-1, 1, Conv, [64, 3, 2, None, 1, nn.LeakyReLU(0.1)]], # 1-P2/4
|
||||||
|
|
||||||
|
[-1, 1, Conv, [32, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-2, 1, Conv, [32, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-1, 1, Conv, [32, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-1, 1, Conv, [32, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[[-1, -2, -3, -4], 1, Concat, [1]],
|
||||||
|
[-1, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]], # 7
|
||||||
|
|
||||||
|
[-1, 1, MP, []], # 8-P3/8
|
||||||
|
[-1, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-2, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-1, 1, Conv, [64, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-1, 1, Conv, [64, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[[-1, -2, -3, -4], 1, Concat, [1]],
|
||||||
|
[-1, 1, Conv, [128, 1, 1, None, 1, nn.LeakyReLU(0.1)]], # 14
|
||||||
|
|
||||||
|
[-1, 1, MP, []], # 15-P4/16
|
||||||
|
[-1, 1, Conv, [128, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-2, 1, Conv, [128, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-1, 1, Conv, [128, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-1, 1, Conv, [128, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[[-1, -2, -3, -4], 1, Concat, [1]],
|
||||||
|
[-1, 1, Conv, [256, 1, 1, None, 1, nn.LeakyReLU(0.1)]], # 21
|
||||||
|
|
||||||
|
[-1, 1, MP, []], # 22-P5/32
|
||||||
|
[-1, 1, Conv, [256, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-2, 1, Conv, [256, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-1, 1, Conv, [256, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-1, 1, Conv, [256, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[[-1, -2, -3, -4], 1, Concat, [1]],
|
||||||
|
[-1, 1, Conv, [512, 1, 1, None, 1, nn.LeakyReLU(0.1)]], # 28
|
||||||
|
]
|
||||||
|
|
||||||
|
# yolov7-tiny head
|
||||||
|
head:
|
||||||
|
[[-1, 1, Conv, [256, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-2, 1, Conv, [256, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-1, 1, SP, [5]],
|
||||||
|
[-2, 1, SP, [9]],
|
||||||
|
[-3, 1, SP, [13]],
|
||||||
|
[[-1, -2, -3, -4], 1, Concat, [1]],
|
||||||
|
[-1, 1, Conv, [256, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[[-1, -7], 1, Concat, [1]],
|
||||||
|
[-1, 1, Conv, [256, 1, 1, None, 1, nn.LeakyReLU(0.1)]], # 37
|
||||||
|
|
||||||
|
[-1, 1, Conv, [128, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-1, 1, nn.Upsample, [None, 2, 'nearest']],
|
||||||
|
[21, 1, Conv, [128, 1, 1, None, 1, nn.LeakyReLU(0.1)]], # route backbone P4
|
||||||
|
[[-1, -2], 1, Concat, [1]],
|
||||||
|
|
||||||
|
[-1, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-2, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-1, 1, Conv, [64, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-1, 1, Conv, [64, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[[-1, -2, -3, -4], 1, Concat, [1]],
|
||||||
|
[-1, 1, Conv, [128, 1, 1, None, 1, nn.LeakyReLU(0.1)]], # 47
|
||||||
|
|
||||||
|
[-1, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-1, 1, nn.Upsample, [None, 2, 'nearest']],
|
||||||
|
[14, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]], # route backbone P3
|
||||||
|
[[-1, -2], 1, Concat, [1]],
|
||||||
|
|
||||||
|
[-1, 1, Conv, [32, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-2, 1, Conv, [32, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-1, 1, Conv, [32, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-1, 1, Conv, [32, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[[-1, -2, -3, -4], 1, Concat, [1]],
|
||||||
|
[-1, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]], # 57
|
||||||
|
|
||||||
|
[-1, 1, Conv, [128, 3, 2, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[[-1, 47], 1, Concat, [1]],
|
||||||
|
|
||||||
|
[-1, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-2, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-1, 1, Conv, [64, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-1, 1, Conv, [64, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[[-1, -2, -3, -4], 1, Concat, [1]],
|
||||||
|
[-1, 1, Conv, [128, 1, 1, None, 1, nn.LeakyReLU(0.1)]], # 65
|
||||||
|
|
||||||
|
[-1, 1, Conv, [256, 3, 2, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[[-1, 37], 1, Concat, [1]],
|
||||||
|
|
||||||
|
[-1, 1, Conv, [128, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-2, 1, Conv, [128, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-1, 1, Conv, [128, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[-1, 1, Conv, [128, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[[-1, -2, -3, -4], 1, Concat, [1]],
|
||||||
|
[-1, 1, Conv, [256, 1, 1, None, 1, nn.LeakyReLU(0.1)]], # 73
|
||||||
|
|
||||||
|
[57, 1, Conv, [128, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[65, 1, Conv, [256, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
[73, 1, Conv, [512, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
|
||||||
|
|
||||||
|
[[74,75,76], 1, Detect, [nc, anchors]], # Detect(P3, P4, P5)
|
||||||
|
]
|
Loading…
Reference in New Issue