YoloV2
特点:
Yolo9000,Better、Faster、Stronger
最终能够检测目标数目超过九千类别
超过30s是实时的;YoloV2又快又准!
Batch Normalization
采用Batch Normalization的方法,mAP提升百分之二左右;
对同一个Batch上的特征进行Normalization
删除全连接层
每次Conv之后都进行Sigmoid(Batch Normalizaion)
没有FC层,进行了五次降采样
使用1*1的卷积节省了很多参数
High Resolution Classifier
由V1的224 * 224 变为V2的448 * 448图片用于训练
提升大概4个百分点
Convolutional with Anchor Boxes
基于anchor偏移的目标边界框预测方式
使得模型更加稳定,更容易收敛;
采用anchor的方式,导致mAP有所下降,但是Recall有明显的提升
Anchor:每个grid cell预先设定一组不同大小和宽高比的边框,来覆盖整个图像的不同位置和多种尺度。每个anchor box都会单独预测分类概率值,最终获得13* 13* anchorsnum个边界框,大大增多。
- 每个尺寸选取k=5个先验框的大小—》》》通过聚类对数据集中的数据进行分类,选取五个聚类中心
Dimension Clusters
Faster-RCnn 或 SDD中,没有给出明确的尺寸来源
在YoloV2中,采用K-means聚类的方法去获得相应的预测框的尺寸;
- 选用k=5的聚类进行提取
- 这里不选用欧氏距离,不同图像大小不同,所以大图像惩罚比小图像大
- d(box,centroids)= 1 - IOU(box,centroids)
获得进步: - 通过引入anchor boxes,使得预测的box数量更多(1313n)
- 跟faster-rcnn系列不同的是先验框区别不是直接按照长款固定比给定的
Direct location Prediction
Yolov2对移动位置量进行预测;
使用sigmoid函数,将tx、ty预测的中心坐标进行了限制,大小限定在0到1之间了;给Yolo带来五个点的提升;
坐标还原:坐标*32倍,还原到真实图像的坐标上
Fine-Grained Features
13 * 13 feature map 和 26 * 26的feature map进行特征融合;
如何进行特征融合的:通过Passthrough Layer
通过1 * 1卷积层将26 * 26 *512卷积称为26 * 26 * 256
通过Passthrough Layer将26 * 26 *512变为13 * 13 * 1024
Passthrough Layer
Multi-Scale Training
尝试采用多尺度输入尺寸;
网络的鲁棒性受限,将图片缩放到不同尺度进行调整;
每次迭代10个batch,我们就对图像随机缩放,要求图片大小是32的整数倍,最小尺寸320 * 320,最大尺寸608 * 608
Backbone:Darknet-19
Darknet-19是有19个卷积层;
YoloV2的模型架构
最后得到5个anchorbox对应的5个位置参数,20个类别的概率;
训练细节
- 用到了YoloV1中的数据增强处理
- SSD中的随机裁剪、颜色增强