YOLOv5中Focus块与6x6卷积块之间的联系与对比

本文讨论了Yolov5s中Focus结构与6x6卷积层的理论等价性,指出Focus通过切片和3x3conv减少参数和计算量,但在大量图片处理时,6x6conv的效率更高,因此在yolov6.0中进行了替换。
摘要由CSDN通过智能技术生成

    以yolov5s为例,原始的640\times 640\times 3的图像输入Focus结构,采用切片操作,先变成320\times 320\times 12的特征图,再经过一次卷积操作,最终变成320\times 320\times 32的特征图。

    下面介绍为什么k=6卷积层在理论上等价于Focus结构。 

(1)Focus层的参数量与计算量(忽略bias)

计算量FLOPS=(3\times 4)\times 32\times 3\times 3\times 320\times 320=353894400

参数量 Params=3\times 4\times 32\times 3\times 3=3456

(2)k=6卷积层的参数量与计算量(忽略bias)

计算量FLOPS=3\times 32\times 6\times 6\times 320\times 320=353894400

参数量Params=3\times 32\times 6\times 6=3456

   通过上面的计算也解释通了为什么使用6x6卷积块(改变以往一般都是用卷积核为奇数的卷积块的做法) 

  在yolov5中,作者提出单层Focus结构来替换了yolov3的backbone中的前三层,具体如下图所示。

   图片在经过Focus模块后,最直观的是起到了下采样的作用,在这个下采样的过程相比于以前的卷积操作减少了层数、参数,以及 FLOPs,同时对mAP影响较小。

   Focus结构将原图切分并堆叠在一起,再用3x3的conv进行特征提取,Focus结构与一个6x6的conv的感受野、计算量以及参数量是相同的,所以在理论上与6x6的conv完全等价。

   但作者可能是因为训练过程中图片数量较多,Focus结构对图片进行拆分提取再堆叠这个过程没有直接conv的计算高效(对于现有的一些GPU设备以及相应的优化算法,使用6x6的conv更高效),所以才在yolov6.0的版本中把Focus换成了6x6的conv。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值