YOLOR / darknet /cfg /yolov4-csp-x.cfg
karolmajek's picture
app
1a1ee1f
[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=80
size=3
stride=2
pad=1
activation=swish
# Residual Block
[convolutional]
batch_normalize=1
filters=40
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=80
size=3
stride=1
pad=1
activation=swish
# 4 (previous+1+3k)
[shortcut]
from=-3
activation=linear
# P2
# Downsample
[convolutional]
batch_normalize=1
filters=160
size=3
stride=2
pad=1
activation=swish
# Split
[convolutional]
batch_normalize=1
filters=80
size=1
stride=1
pad=1
activation=swish
[route]
layers = -2
[convolutional]
batch_normalize=1
filters=80
size=1
stride=1
pad=1
activation=swish
# Residual Block
[convolutional]
batch_normalize=1
filters=80
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=80
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=80
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=80
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=80
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=80
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
# Transition first
[convolutional]
batch_normalize=1
filters=80
size=1
stride=1
pad=1
activation=swish
# Merge [-1, -(3k+4)]
[route]
layers = -1,-13
# Transition last
# 20 (previous+7+3k)
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
# P3
# Downsample
[convolutional]
batch_normalize=1
filters=320
size=3
stride=2
pad=1
activation=swish
# Split
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
[route]
layers = -2
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
# Residual Block
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=160
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=160
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=160
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=160
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=160
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=160
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=160
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=160
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=160
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=160
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
# Transition first
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
# Merge [-1 -(4+3k)]
[route]
layers = -1,-34
# Transition last
# 57 (previous+7+3k)
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
# P4
# Downsample
[convolutional]
batch_normalize=1
filters=640
size=3
stride=2
pad=1
activation=swish
# Split
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
[route]
layers = -2
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
# Residual Block
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=320
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=320
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=320
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=320
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=320
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=320
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=320
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=320
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=320
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=320
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
# Transition first
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
# Merge [-1 -(3k+4)]
[route]
layers = -1,-34
# Transition last
# 94 (previous+7+3k)
[convolutional]
batch_normalize=1
filters=640
size=1
stride=1
pad=1
activation=swish
# P5
# Downsample
[convolutional]
batch_normalize=1
filters=1280
size=3
stride=2
pad=1
activation=swish
# Split
[convolutional]
batch_normalize=1
filters=640
size=1
stride=1
pad=1
activation=swish
[route]
layers = -2
[convolutional]
batch_normalize=1
filters=640
size=1
stride=1
pad=1
activation=swish
# Residual Block
[convolutional]
batch_normalize=1
filters=640
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=640
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=640
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=640
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=640
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=640
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=640
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=640
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
[convolutional]
batch_normalize=1
filters=640
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
filters=640
size=3
stride=1
pad=1
activation=swish
[shortcut]
from=-3
activation=linear
# Transition first
[convolutional]
batch_normalize=1
filters=640
size=1
stride=1
pad=1
activation=swish
# Merge [-1 -(3k+4)]
[route]
layers = -1,-19
# Transition last
# 116 (previous+7+3k)
[convolutional]
batch_normalize=1
filters=1280
size=1
stride=1
pad=1
activation=swish
# ============ End of Backbone ============ #
# ============ Neck ============ #
# CSPSPP
[convolutional]
batch_normalize=1
filters=640
size=1
stride=1
pad=1
activation=swish
[route]
layers = -2
[convolutional]
batch_normalize=1
filters=640
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=640
activation=swish
[convolutional]
batch_normalize=1
filters=640
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=640
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=640
activation=swish
[convolutional]
batch_normalize=1
filters=640
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=640
activation=swish
[route]
layers = -1, -15
# 133 (previous+6+5+2k)
[convolutional]
batch_normalize=1
filters=640
size=1
stride=1
pad=1
activation=swish
# End of CSPSPP
# FPN-4
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
[upsample]
stride=2
[route]
layers = 94
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
[route]
layers = -1, -3
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
# Split
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
[route]
layers = -2
# Plain Block
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=320
activation=swish
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=320
activation=swish
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=320
activation=swish
# Merge [-1, -(2k+2)]
[route]
layers = -1, -8
# Transition last
# 149 (previous+6+4+2k)
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
# FPN-3
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
[upsample]
stride=2
[route]
layers = 57
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
[route]
layers = -1, -3
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
# Split
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
[route]
layers = -2
# Plain Block
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=160
activation=swish
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=160
activation=swish
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=160
activation=swish
# Merge [-1, -(2k+2)]
[route]
layers = -1, -8
# Transition last
# 165 (previous+6+4+2k)
[convolutional]
batch_normalize=1
filters=160
size=1
stride=1
pad=1
activation=swish
# PAN-4
[convolutional]
batch_normalize=1
size=3
stride=2
pad=1
filters=320
activation=swish
[route]
layers = -1, 149
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
# Split
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
[route]
layers = -2
# Plain Block
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=320
activation=swish
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=320
activation=swish
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=320
activation=swish
[route]
layers = -1,-8
# Transition last
# 178 (previous+3+4+2k)
[convolutional]
batch_normalize=1
filters=320
size=1
stride=1
pad=1
activation=swish
# PAN-5
[convolutional]
batch_normalize=1
size=3
stride=2
pad=1
filters=640
activation=swish
[route]
layers = -1, 133
[convolutional]
batch_normalize=1
filters=640
size=1
stride=1
pad=1
activation=swish
# Split
[convolutional]
batch_normalize=1
filters=640
size=1
stride=1
pad=1
activation=swish
[route]
layers = -2
# Plain Block
[convolutional]
batch_normalize=1
filters=640
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=640
activation=swish
[convolutional]
batch_normalize=1
filters=640
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=640
activation=swish
[convolutional]
batch_normalize=1
filters=640
size=1
stride=1
pad=1
activation=swish
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=640
activation=swish
[route]
layers = -1,-8
# Transition last
# 191 (previous+3+4+2k)
[convolutional]
batch_normalize=1
filters=640
size=1
stride=1
pad=1
activation=swish
# ============ End of Neck ============ #
# ============ Head ============ #
# YOLO-3
[route]
layers = 165
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=320
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 = 178
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=640
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 = 191
[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=1280
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