Yolo V3的关键技术:
- V3改进的出发点是检测效果,最大的改进就是网络结构,更适合小目标检测
- 特征做的更细致,利用不同层的征图信息来预测不同规格物体
- 先验框更丰富了,3种scale,每种3个规格,一共9种
yolov1版本有2种先验框,v2版本有5种先验框,v3版本有9种先验框 - softmax改进,预测多标签任务,每个种类都作为二分类
YOlO V3 多Scale
为了能检测到不同大小的物体,设计了3个scale特征图,1313,2626,52*52分别预测大,中,小三个目标。在每一种scale上产生三种box,一共产生9种候选框。
核心网络架构
- 没有池化和全连接层,全部卷积
池化层压缩了特征,影响效果。 - 下采样通过stride为2实现,
通过卷积的stride为2 实现了下采样。 - 3种scale,更多先验框
- 基本上当下经典做法全融入了(引入了Res block)
多scale特征图是怎么得到的呢?
- 网络输入尺寸是416,通过32倍下采样得到了13*13 特征图。
- 网络输入尺寸是416,通过16倍下采样,得到了2626特征图,并且再融合1313上采样到26*26的特征。
- 网络输入尺寸是416,通过8倍下采样,得到了5252特征图,并且再融合2626上采样到52*52的特征。
YOLOv3网络输出
- YOLOv1的网络输出是772(4+1+80)
- YOLOv2的网络输出是13135(4+1+80)
- YOLOv3的网络输出是有三部分组成,分别是:13133*(4+1+80), 26263*(4+1+80) 和 52523(4+1+80)
先验框设计
- YOLOV1 用了YOLOV2中选了5个,Yolov3,一共有9种
- 特征图上:(116x90),(156x198),(373x326)
特征图上:(30x61),(62x45),(59x119)
特征图上:(10x13),(16x30),(33x23)
类别预测
yolov3不再使用softmax,作为内别预测,而只是使用独立的logistic分类器。在训练期间,我们使用二元交叉熵损失进行类预测。
在迁移到更复杂的领域(如Open Images Dataset)时,此方法会有所帮助。在此数据集中有许多重叠标签(即女人和人)。使用softmax假设每个框只有一个类,而通常不是这种情况。多标签方法可以更好地模拟数据。