darknet/cfg/yolov4-csp-swish.cfg

1356 lines
14 KiB
INI

[net]
# Testing
#batch=1
#subdivisions=1
# Training
batch=64
subdivisions=8
width=640
height=640
channels=3
momentum=0.949
decay=0.0005
angle=0
saturation = 1.5
exposure = 1.5
hue=.1
learning_rate=0.001
burn_in=1000
max_batches = 500500
policy=steps
steps=400000,450000
scales=.1,.1
mosaic=1
letter_box=1
ema_alpha=0.9998
#optimized_memory=1
# ============ Backbone ============ #
# Stem
# 0
[convolutional]
batch_normalize=1
filters=32
size=3
stride=1
pad=1
activation=swish
# P1
# Downsample
[convolutional]
batch_normalize=1
filters=64
size=3
stride=2
pad=1
activation=swish
# Residual Block
[convolutional]
batch_normalize=1
filters=32
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=64
size=3
stride=1
pad=1
activation=swish
# 4 (previous+1+3k)
[shortcut]
from=-3
activation=linear
# P2
# Downsample
[convolutional]
batch_normalize=1
filters=128
size=3
stride=2
pad=1
activation=swish
# Split
[convolutional]
batch_normalize=1
filters=64
size=1
stride=1
pad=1
activation=swish
[route]
layers = -2
[convolutional]
batch_normalize=1
filters=64
size=1
stride=1
pad=1
activation=swish
# Residual Block
[convolutional]
batch_normalize=1
filters=64
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=64
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=64
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=64
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
# Transition first
[convolutional]
batch_normalize=1
filters=64
size=1
stride=1
pad=1
activation=swish
# Merge [-1, -(3k+4)]
[route]
layers = -1,-10
# Transition last
# 17 (previous+7+3k)
[convolutional]
batch_normalize=1
filters=128
size=1
stride=1
pad=1
activation=swish
# P3
# Downsample
[convolutional]
batch_normalize=1
filters=256
size=3
stride=2
pad=1
activation=swish
# Split
[convolutional]
batch_normalize=1
filters=128
size=1
stride=1
pad=1
activation=swish
[route]
layers = -2
[convolutional]
batch_normalize=1
filters=128
size=1
stride=1
pad=1
activation=swish
# Residual Block
[convolutional]
batch_normalize=1
filters=128
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=128
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=128
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=128
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=128
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=128
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=128
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=128
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=128
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=128
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=128
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=128
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=128
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=128
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=128
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=128
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
# Transition first
[convolutional]
batch_normalize=1
filters=128
size=1
stride=1
pad=1
activation=swish
# Merge [-1 -(4+3k)]
[route]
layers = -1,-28
# Transition last
# 48 (previous+7+3k)
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
# P4
# Downsample
[convolutional]
batch_normalize=1
filters=512
size=3
stride=2
pad=1
activation=swish
# Split
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
[route]
layers = -2
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
# Residual Block
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=256
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=256
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=256
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=256
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=256
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=256
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=256
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=256
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
# Transition first
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
# Merge [-1 -(3k+4)]
[route]
layers = -1,-28
# Transition last
# 79 (previous+7+3k)
[convolutional]
batch_normalize=1
filters=512
size=1
stride=1
pad=1
activation=swish
# P5
# Downsample
[convolutional]
batch_normalize=1
filters=1024
size=3
stride=2
pad=1
activation=swish
# Split
[convolutional]
batch_normalize=1
filters=512
size=1
stride=1
pad=1
activation=swish
[route]
layers = -2
[convolutional]
batch_normalize=1
filters=512
size=1
stride=1
pad=1
activation=swish
# Residual Block
[convolutional]
batch_normalize=1
filters=512
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=512
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=512
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=512
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=512
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=512
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=512
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=512
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
# Transition first
[convolutional]
batch_normalize=1
filters=512
size=1
stride=1
pad=1
activation=swish
# Merge [-1 -(3k+4)]
[route]
layers = -1,-16
# Transition last
# 98 (previous+7+3k)
[convolutional]
batch_normalize=1
filters=1024
size=1
stride=1
pad=1
activation=swish
# ============ End of Backbone ============ #
# ============ Neck ============ #
# CSPSPP
[convolutional]
batch_normalize=1
filters=512
size=1
stride=1
pad=1
activation=swish
[route]
layers = -2
[convolutional]
batch_normalize=1
filters=512
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=512
activation=swish
[convolutional]
batch_normalize=1
filters=512
size=1
stride=1
pad=1
activation=swish
### SPP ###
[maxpool]
stride=1
size=5
[route]
layers=-2
[maxpool]
stride=1
size=9
[route]
layers=-4
[maxpool]
stride=1
size=13
[route]
layers=-1,-3,-5,-6
### End SPP ###
[convolutional]
batch_normalize=1
filters=512
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=512
activation=swish
[route]
layers = -1, -13
# 113 (previous+6+5+2k)
[convolutional]
batch_normalize=1
filters=512
size=1
stride=1
pad=1
activation=swish
# End of CSPSPP
# FPN-4
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
[upsample]
stride=2
[route]
layers = 79
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
[route]
layers = -1, -3
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
# Split
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
[route]
layers = -2
# Plain Block
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=256
activation=swish
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=256
activation=swish
# Merge [-1, -(2k+2)]
[route]
layers = -1, -6
# Transition last
# 127 (previous+6+4+2k)
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
# FPN-3
[convolutional]
batch_normalize=1
filters=128
size=1
stride=1
pad=1
activation=swish
[upsample]
stride=2
[route]
layers = 48
[convolutional]
batch_normalize=1
filters=128
size=1
stride=1
pad=1
activation=swish
[route]
layers = -1, -3
[convolutional]
batch_normalize=1
filters=128
size=1
stride=1
pad=1
activation=swish
# Split
[convolutional]
batch_normalize=1
filters=128
size=1
stride=1
pad=1
activation=swish
[route]
layers = -2
# Plain Block
[convolutional]
batch_normalize=1
filters=128
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=128
activation=swish
[convolutional]
batch_normalize=1
filters=128
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=128
activation=swish
# Merge [-1, -(2k+2)]
[route]
layers = -1, -6
# Transition last
# 141 (previous+6+4+2k)
[convolutional]
batch_normalize=1
filters=128
size=1
stride=1
pad=1
activation=swish
# PAN-4
[convolutional]
batch_normalize=1
size=3
stride=2
pad=1
filters=256
activation=swish
[route]
layers = -1, 127
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
# Split
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
[route]
layers = -2
# Plain Block
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=256
activation=swish
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=256
activation=swish
[route]
layers = -1,-6
# Transition last
# 152 (previous+3+4+2k)
[convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=swish
# PAN-5
[convolutional]
batch_normalize=1
size=3
stride=2
pad=1
filters=512
activation=swish
[route]
layers = -1, 113
[convolutional]
batch_normalize=1
filters=512
size=1
stride=1
pad=1
activation=swish
# Split
[convolutional]
batch_normalize=1
filters=512
size=1
stride=1
pad=1
activation=swish
[route]
layers = -2
# Plain Block
[convolutional]
batch_normalize=1
filters=512
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=512
activation=swish
[convolutional]
batch_normalize=1
filters=512
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=512
activation=swish
[route]
layers = -1,-6
# Transition last
# 163 (previous+3+4+2k)
[convolutional]
batch_normalize=1
filters=512
size=1
stride=1
pad=1
activation=swish
stopbackward=900
# ============ End of Neck ============ #
# ============ Head ============ #
# YOLO-3
[route]
layers = 141
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=256
activation=swish
[convolutional]
size=1
stride=1
pad=1
filters=255
activation=logistic
[yolo]
mask = 0,1,2
anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401
classes=80
num=9
jitter=.1
scale_x_y = 2.0
objectness_smooth=1
ignore_thresh = .7
truth_thresh = 1
#random=1
resize=1.5
#iou_thresh=0.2
iou_normalizer=0.05
cls_normalizer=0.5
obj_normalizer=0.4
iou_loss=ciou
nms_kind=diounms
beta_nms=0.6
new_coords=1
max_delta=2
# YOLO-4
[route]
layers = 152
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=512
activation=swish
[convolutional]
size=1
stride=1
pad=1
filters=255
activation=logistic
[yolo]
mask = 3,4,5
anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401
classes=80
num=9
jitter=.1
scale_x_y = 2.0
objectness_smooth=1
ignore_thresh = .7
truth_thresh = 1
#random=1
resize=1.5
#iou_thresh=0.2
iou_normalizer=0.05
cls_normalizer=0.5
obj_normalizer=0.4
iou_loss=ciou
nms_kind=diounms
beta_nms=0.6
new_coords=1
max_delta=2
# YOLO-5
[route]
layers = 163
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=1024
activation=swish
[convolutional]
size=1
stride=1
pad=1
filters=255
activation=logistic
[yolo]
mask = 6,7,8
anchors = 12, 16, 19, 36, 40, 28, 36, 75, 76, 55, 72, 146, 142, 110, 192, 243, 459, 401
classes=80
num=9
jitter=.1
scale_x_y = 2.0
objectness_smooth=1
ignore_thresh = .7
truth_thresh = 1
#random=1
resize=1.5
#iou_thresh=0.2
iou_normalizer=0.05
cls_normalizer=0.5
obj_normalizer=0.4
iou_loss=ciou
nms_kind=diounms
beta_nms=0.6
new_coords=1
max_delta=2