一、深度学习算法概述
1、不同阶段算法优缺点分析
One-stage:
优点:速度非常快,适合做实时监测任务
缺点:效果通常不好
2、yolo评价指标
yolo评价指标:map和fps
Map指标:综合衡量检测效果
精度:识别准确率
召回率(recall):识别是否完全,有没有没有检测到的
TP:正确被检测到的
FP:错误被检测到的
FN:遗漏的
IOU:真实值与预测值的交集/真实值与预测值的并集
二、YOLOv1
1、特点
经典one-stage方法
把检测问题转换为回归问题,一个CNN就行
对视频进行实时检测
2、核心思想
输入S*S的格子,每个点产生两种候选框,切实有物体的点产生的候选框进行微调(置信度判断是否有物体),筛选出IOU大的
3、网络架构
7×7表示格子大小,30的含义:前5个是B1(x1,y1,w1,h1,c1),在5个表示B2,剩下20表示当前数据集有20个分类类别
三、YOLOv2
1、与V1的区别
V2版本舍弃了全连接层,不再使用DropOut,卷积之后全部加入Batch Normalization(网络每一层的输入都做了归一化,网络收敛更容易 Conv-BN),经过BN处理后网络提升2%的map
V2更大的分辨率:V1训练时用的是224×224的输入大小,测试用448×448,这样可能导致模型效率降低,V2训练时额外进行10次448×448的微调,使用高分辨率的的分类器后,map提升约4%
使用k-means聚类来提取先验框,这样对候选框大小不敏感,更适用于真实的数据集
通过引入Anchor boxes,使得预测的box数量更多,在基本不影响mAP的情况下,提高了大约7%的召回率
2、 网络结构
越大的感受野,越能感受大的物体。最后一层感受野太大,小目标可能就丢失了,需要融合之前的特征
四、YOLOv3
相较于之前的版本,最大的改进就是网络结构,使其更适合小目标检测
Darknet-53 没有池化,下采样通过stride为2来实现和全连接层
使用了resnet的思想,至少不比原来差
特征做的更细致,融合多持续特征图来预测不同规格物体
先验框更丰富,3种scale,每种3个规格,一共9种
softmax改进,预测多标签任务