YOLOv3中darknet的各种层的说明

转自:链接:https://www.jianshu.com/p/7a701e861cec

 

激活函数:

很多层里面有 activation 这一项,这是激活函数,我看到的配置文件里面最常用的就3个:
LINEAR:啥都不干
RELU   :值 > 0时保持不变,小于0时置0
LEAKY :值 > 0时保持不变,小于0时值 * 0.1 (类似于caffe的prelu层)

卷积层:

[convolutional]
filters=96        # 输出blob通道数
size=11          # 卷积核尺寸 (长宽相同),等价于caffe里面的kernel_w, kernel_h
stride=4         # 移动步长
pad=0            # 是否在边缘补 0    最终的padding为size/2(当pad = 1)
activation=relu    # Relu 激活函数

shortcut 层:

类似于caffe 的 eltwise 层(add),也就是把两个c h w都相同的两个层相加成一个相同c h w的层。

[shortcut]
from=-3   #和往前数第三个层相加
activation=linear

route 层:

route layer层主要是把对应的层连接在一起,在darknet 网络结构中,要求输入层对应的width、height必须相等,如果不相等,则把route layer层的输出w,h,c都设置为0。例如输入层1:26*26*256   输入层2:26*26*128  则route layer输出为:26*26*(256+128)  它具有可以具有一个或两个值的属性层。当属性只有一个值时,它会输出由该值索引的网络层的特征图。类似于caffe的concat层。

[route]
layers = -1, 61

upsample 层:

上采样,功能类似最邻近差值缩放算法

[upsample]
stride=2

yolo层(YOLOV3新增的层):


[yolo]
mask = 0,1,2  #当前属于第几个预选框
anchors = 10,13,  16,30,  33,23,  30,61,  62,45,  59,119,  116,90,  156,198,  373,326 #预选框, 将样本通过k-means算法计算出来的值
classes=80  #网络需要识别的物体种类数
num=9    #预选框的个数,即anchors总数
jitter=.3   #通过抖动增加噪声来抑制过拟合
ignore_thresh = .7
truth_thresh = 1
random=1  #设置为0,表示关闭多尺度训练(显存小可以设置0)





 

  • 5
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值