yolo网络架构
理解其输入输出
yolo优缺:
yolo模型的训练样本构建的方法
1. 单纯的卷积、池化最后加了两层全连接
2. 从网络结构上看,与前面介绍的CNN分类网络没有本质的区别
3. 最大的差异是输出层用线性函数做激活函数
理解yolo模型的损失函数
YOLOv2
改进方法
在继续保持处理速度的基础上,对这三个方面进行了改进
- 预测更准确(Better)
- batch normalization批标准化
- 使用高分辨率图像微调分类模型
- 采用Anchor Boxes
- 聚类提取anchor尺度
- 边框位置的预测
- 细粒度特征融合
- 多尺度训练
- 速度更快(Faster)
- 提出了Darknet-19(有19个卷积层和5个MaxPooling层)网络结构作为特征提取网络
- 识别对象更多(Stronger)
- 利用ImageNet非常大量的分类样本,联合COCO的对象检测数据集一起训练,使得YOLO2即使没有学过很多对象的检测样本,也能检测出这些对象。
YOLOv3
- 多尺度检测(分不同的特征进行分层检测,浅层特征浅层的feature map中主要包含低级的信息(物体边缘,颜色,初级位置信息等),深层的feature map中包含高等信息(例如物体的语义信息:狗,猫,汽车等等)
多种scale变换的经典方法:
1)建立特征图像金字塔
2)检测只在最后一层feature map阶段进行
3)对不同深度的feature map分别进行目标检测。
4)当前层的feature map会对未来层的feature map进行上采样,并加以利用低阶特征与高阶特征就有机融合起来。
- 先验框更丰富;
- 调整了网络结构;
- 对象分类使用logistic代替了softmax,更适用于多标签分类任务。
相比之前的算法,尤其是针对小目标,精度有显著提升。
网络结构结构:
在基本的图像特征提取方面,YOLO3采用了Darknet-53的网络结构(含有53个卷积层),它借鉴了残差网络ResNet的做法,在层之间设置了shortcut,来解决深层网络梯度的问题。
模型先验框设计的方法
采用K-means聚类得到先验框的尺寸,为每种尺度设定3种先验框,总共聚类出9种尺寸的先验框
了解yoloV4模型
Yolov4并没有创造新的改进,而是使用了大量的目标检测的技巧