2—YOLO2

Darknet: Open Source Neural Networks in Chttps://pjreddie.com/darknet/
这里写图片描述

YOLO: Real-Time Object Detectionhttps://pjreddie.com/darknet/yolo/
这里写图片描述
Pre-Trained Modelshttps://pjreddie.com/darknet/imagenet/
这里写图片描述

yolo_voc.cfg中参数

第一个net

[net]
batch=64  //每次迭代要进行训练的图片数量
subdivisions=8//
height=416 //图像缩放后的大小
width=416
channels=3//彩色图像
momentum=0.9
decay=0.0005
angle=0  //角度
saturation = 1.5  //饱和度
exposure = 1.5  //曝光度
hue=.1  //色调
learning_rate=0.0001
max_batches = 32000//最大训练迭代次数
policy=steps
steps=100,20000,30000
scales=10,.1,.1
【解释】
batch:每次迭代要进行训练的图片数量 
subdivisions:batch中的图片再产生子集,源码中的图片数量int imgs = net.batch * net.subdivisions * ngpus 
width:输入图片宽度, height:输入图片高度,channels :输入图片通道数

对于每次迭代训练,YOLOv2会基于角度(angle),饱和度(saturation),曝光(exposure),色调(hue)产生新的训练图片 
angle:图片角度变化,单位为度,假如angle=5,就是生成新图片的时候随机旋转-5~5度 
saturation & exposure: 饱和度与曝光变化大小,tiny-yolo-voc.cfg中1到1.5倍,以及1/1.5~1倍 
hue:色调变化范围,tiny-yolo-voc.cfg中-0.1~0.1 
max_batches:最大迭代次数 

中间的网络结构不列出了,看最后一个卷积层

[convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=1024 //卷积核的个数
activation=leaky//leaky激活函数,大于0的为x,小于0的为0

[convolutional]
size=1
stride=1
pad=1
filters=40//用3类训练,所以5*(3+4+1)
activation=linear
[region]最后一层
anchors = 1.08,1.19,  3.42,4.41,  6.63,11.38,  9.42,5.11,  16.62,10.52
bias_match=1
classes=3//类别数
coords=4  //
num=5
softmax=1
jitter=.2
rescore=1

虽然region(YOLOv1的detection)在最后一层,但是很多参数都是一开始就载入使用的,尤其是对于图片数据处理的参数 
classes:类别数量 
coords:BoundingBox的tx,ty,tw,th,tx与ty是相对于左上角的gird,同时是当前grid的比例,tw与th是宽度与高度取对数 
num:每个grid预测的BoundingBox个数 
jitter:利用数据抖动产生更多数据,YOLOv2中使用的是crop,filp,以及net层的angle,flip是随机的,crop就是jitter的参数,tiny-yolo-voc.cfg中jitter=.2,就是在0~0.2中进行crop 
anchors:预测框的初始宽高,第一个是w,第二个是h,总数量是num*2,YOLOv2作者说anchors是使用K-MEANS获得,其实就是计算出哪种类型的框比较多,可以增加收敛速度,如果不设置anchors,默认是0.5,还有就是anchors读入参数中名字是biases 
这里有一个计算样本anchors的Python脚本,anchors生成脚本 
bias_match:如果为1,计算best iou时,预测宽高强制与anchors一致 
softmax:如果为1,使用softmax 
rescore:决定使用哪种方式计算IOU的误差,为1时,使用当前best iou计算,为0时,使用1计算 
object_scale & noobject_scale & class_scale & coord_scale:YOLOv1论文中cost function的权重,哪一个更大,每一次更新权重的时候,对应方面的权重更新相对比重更大 
thresh:决定是否需要计算IOU误差的参数,大于thresh,IOU误差不会夹在cost function中 
random:如果为1每次迭代图片大小随机从320到608,步长为32,如果为0,每次训练大小与输入大小一致
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值