YOLOv3的简介
YOLOv3总结了自己在YOLOv2的基础上做的一些尝试性改进,有的尝试取得了成功,而有的尝试并没有提升模型性能。其中有两个值得一提的亮点,一个是使用残差模型,进一步加深了网络结构;另一个是使用FPN架构实现多尺度检测。
YOLOv3的创新点
- 新的网络结构:DarkNet-53
- 融合FPN
- 用逻辑回归替代softmax作为分类器
YOLOv3对网络做的改进
YOLOv3在之前DarkNet-19的基础上引入了残差快,并进一步加深了网络,改进后的网络有53个卷积层,取名为DarkNet-53,网络结构如下图所示:
为了比较DarkNet-53与其它网络结构的性能,作者在TitanX上,采用相同的实验设置,将的图片分别输入以DarkNet-19,ResNet-101,ResNet-152和DarkNet-53为基础网络的分类模型中,实验得到的结果如下图所示。
可以看到DarkNet-53比ResNet-101的性能更好,而且速度是其1.5倍,DarkNet-53与ResNet-152性能相似但速度几乎是其2倍。注意到,DarkNet-53相比于其它网络结构实现了每秒最高的浮点计算量,说明其网络结构能更好的利用GPU。
YOLOv3实现多尺度检测
YOLOv3借鉴了FPN的思想,从不同尺度提取特征。相比YOLOv2,YOLOv3提取最后3层特征图,不仅在每个特征图上分别独立做预测,同时通过将小特征图上采样到与大的特征图相同大小,然后与大的特征图拼接做进一步预测。用维度聚类的思想聚类出9种尺度的anchor box,将9种尺度的anchor box均匀的分配给3种尺度的特征图。如下图是在网络结构图的基础上加上多尺度特征提取部分的示意图: