《YOLOV4&5原理与源代码解析之五:SPP CSP》

        前面咱们都在讨论数据如何增强,这一开始讨论YOLOV4中网络结构的创新之处。YOLOV4将一些主流优秀的框架拿过来用,提升了效果,会有更多的性能开销,但同时作者又将其进行了简化,是的最终V4速度和mAP达到一个平衡的效果(个人觉得还是V5香,反正原理差不多)。

一、SPP 

  SPP能够增大感受野,使得算法适应不分辨率图像(也就是大目标、小目标);参考YOLOV3(V3中是:动态改变特征图大小,使得模型适应不同分辨率图像,兼顾大、小目标)其实,输入一个特征图,经过如下图Mutil-Scale MaxPooling的时候,能够将特征图size调整到一致,后续方便堆叠在一起。

放一张高清图:

 

 概括下SPPNet(Sptial Pyramid Pooling 网络,空间金字塔池化):如上图,不管featureMap分辨率大小(输出都同一个维度),直接分三组,分为:4×4、2×2、1×1的块,然后执行MaxPooling,得到维度为16、4、1的特征图,如上图进行concat。

二、CSP

       接下来的CSP模块是YOLOV4中最为核心的模块。官方YOLOV4也叫做 CSP-DarkNet。如下图,左边是ResNet,CSP不仅能够和残差网络组合,用在其他网络也是可以的。CSP的一个优势为:如下图b,将特征特分为两个部分,只有其中一个部分进行常规处理,最后将两部分合并在一起,计算量减少一半;如图b的模块在整个网络中被多次使用。论文中表述:这种做法使得速度极大提升,精度不降反而略微提升!

 

CSPNet:和残差连接、dropout一样,都可降低计算代价,简化网络,有效避免过拟合,同时提高mAP。

 reference:

CSPNet:https://zhuanlan.zhihu.com/p/161188971

CV&DL
原文地址:https://www.cnblogs.com/winslam/p/14452136.html