CVPR2021|特征金字塔的新方式YOLOF

简介: 构建特征金字塔最普遍使用的方式是FPN,FPN的成功主要有两点,一是多尺度特征融合,二是分而治之,所谓分而治之就是对不同尺度的目标在不同的分辨率上检测。

Introduction


构建特征金字塔最普遍使用的方式是FPN,FPN的成功主要有两点,一是多尺度特征融合,二是分而治之,所谓分而治之就是对不同尺度的目标在不同的分辨率上检测。


作者基于FPN进行了一项实验。针对多尺度特征融合提出多层输入和单层输入的方式,针对分而治之提出在单层检测和多层检测的方式,两者结合就是如下图所示的MiMo,SiMo,MiSo,SiSo。

86cbca73d5a120c8318729d52ad236a8.png根据图a和b可得出多尺度融合的特征所带来的精度提升很少。对比图a和c,分而治之的方式可带来12的mAP的提升。

 

这可以得出两个结论:


(1) 这表明C5层基本融合了全部语义信息,没必要进行多尺度融合。


(2) 分而治之带来的益处远多于多尺度特征融合。

 

然而相比于单层检测,使用分而治之意味着需要更多的内存,降低推理速度,且对于one-stages的检测器来说结构更复杂。

 

基于第一个实验的结论,作者进行了第二个实验--比较MiMo和SiSo这两种Encoder-Decoder方式。


实验结果如下图所示,MiMo的精度比SiSo更高,但推理速度慢了很多,且MiMo与SiSo的内存之比为134G vs 6G。

 c2a9c6e68b9f2ec84ab47a8aceb3061c.png


经过分析,SiSo精度低的原因是有两个:


(1) 与C5的特征感受野的匹配的尺度范围有限。


(2) 在单层通过稀疏anchor方式产生的positive anchor数量极其不平衡。

 

基于以上两个实验,作者提出不再使用多尺度融合,而是要扩大C5所能匹配的尺度范围,这样能在提高精度的同时,充分利用SiSo的速度和低内存的优点。所使用的方式就是对这两个问题进行改进。


Methods

 

提出Dilated Encoder来解决C5的尺度匹配范围的问题,提出Uniform Matching来解决单层positive anchors数量不平衡的问题。

 

Dilated Encoder


为方便读者理解,先补充一点说明,特征金字塔的一种方式就是FPN这种使用降采样来构建,另一种方式就是通过多支路使用不同空洞率的空洞卷积 (dilation convolution)来构建。


关于特征金字塔这种技术,在很多论文中提出了一些新的特征融合方式,在下一篇中将对特征金字塔进行技术总结,感兴趣的读者请关注公众号《CV技术指南》的技术总结部分。


在这里就是使用了第二种方式来构建特征金字塔,但有所不同的是,这里并不是使用多支路,而是将其串联,一条支路中使用四种空洞率的空洞卷积,看图更容易理解。

c1c430c5fb7af23087b2ea9d91c6dca3.png

Dilated Encoder由一个Projector和四个Residual Blocks组成,其中Residual Blocks中3x3卷积的空洞率是不一样的。

 

Uniform Matching

 

MiMo和SiSo产生的anchor的数量比为100K vs 5K,由于使用Max-IOU这种匹配方式,大的GT boxes会比小的GT boxes产生更多的positive anchor,这使得网络在训练过程中将更多的注意放在了大的 GT boxes,而忽视了小的。


因此Uniform Matching的方式是使用最近邻方式来匹配。具体方式是选择GT boxes最近的K个boxes, 这样的方式不管GT boxes大小可以匹配相同数量的Boxes。

 

conclusion


1.以608x608的输入,YOLOF 在2080Ti上以60fps的速度实现了44.3 mAP的精度。


2.与YOLO_v4相比,在提高了0.8mAP的基础上快了13%。


3.达到RetinaNet的精度,并比它快2.5倍。


4.仅用了一层特征就达到了DETR的精度,训练速度快了7倍。

 

相关文章
|
8月前
|
机器学习/深度学习 算法 内存技术
【CVPR2021】CondenseNetV2:用于深度网络的稀疏特征再激活
【CVPR2021】CondenseNetV2:用于深度网络的稀疏特征再激活
197 2
【CVPR2021】CondenseNetV2:用于深度网络的稀疏特征再激活
|
8月前
|
供应链
金字塔原理
金字塔原理
120 0
|
8月前
|
机器学习/深度学习 缓存 算法
【论文速递】CVPR2020 - CRNet:用于小样本分割的交叉参考网络
【论文速递】CVPR2020 - CRNet:用于小样本分割的交叉参考网络
|
6月前
|
机器学习/深度学习 编解码 计算机视觉
【YOLOv8改进 - 特征融合NECK】 GIRAFFEDET之GFPN :广义特征金字塔网络,高效地融合多尺度特征
YOLOv8专栏探讨了目标检测的创新改进,提出了GiraffeDet,一种轻量级主干和深度颈部模块结合的高效检测网络。GiraffeDet使用S2D-chain和GFPN,优化多尺度信息交换,提升检测性能。代码和论文可在相关链接找到。GFPN通过跳跃和跨尺度连接增强信息融合。文章还展示了核心组件如SPPV4、Focus和CSPStage的代码实现。
|
7月前
|
机器学习/深度学习 编解码 计算机视觉
YOLOv8改进 | Neck | 添加双向特征金字塔BiFPN【含二次独家创新】
💡【YOLOv8专栏】探索特征融合新高度!BiFPN优化版提升检测性能🔍。双向加权融合解决信息丢失痛点,统一缩放增强模型效率🚀。论文&官方代码直达链接,模块化教程助你轻松实践📝。立即阅读:[YOLOv8涨点全攻略](https://blog.csdn.net/m0_67647321/category_12548649.html)✨
|
8月前
|
机器学习/深度学习 算法 固态存储
MFDS-DETR开源 | HS-FPN多级特征融合+Deformable Self-Attention,再续DETR传奇
MFDS-DETR开源 | HS-FPN多级特征融合+Deformable Self-Attention,再续DETR传奇
964 0
|
传感器 机器学习/深度学习 Ubuntu
【论文解读】F-PointNet 使用RGB图像和Depth点云深度 数据的3D目标检测
​F-PointNet 提出了直接处理点云数据的方案,但这种方式面临着挑战,比如:如何有效地在三维空间中定位目标的可能位置,即如何产生 3D 候选框,假如全局搜索将会耗费大量算力与时间。 F-PointNet是在进行点云处理之前,先使用图像信息得到一些先验搜索范围,这样既能提高效率,又能增加准确率。 论文地址:Frustum PointNets for 3D Object Detection from RGB-D Data  开源代码:https://github.com/charlesq34/frustum-pointnets
904 0
|
计算机视觉
全新FPN | 通道增强特征金字塔网络(CE-FPN)提升大中小目标检测的鲁棒性(文末附论文)(一)
全新FPN | 通道增强特征金字塔网络(CE-FPN)提升大中小目标检测的鲁棒性(文末附论文)(一)
228 0
|
计算机视觉 网络架构
全新FPN | 通道增强特征金字塔网络(CE-FPN)提升大中小目标检测的鲁棒性(文末附论文)(二)
全新FPN | 通道增强特征金字塔网络(CE-FPN)提升大中小目标检测的鲁棒性(文末附论文)(二)
433 0
|
机器学习/深度学习 编解码 算法
CVPR2020丨DRN:用于单图像超分辨率的对偶回归网络
论文针对这两个主要的问题进行改进,提出了对偶回归策略,通过引入对 LR 图像额外的约束,从而减小解空间的大小。也就是说,模型除了学习LR到HR图像的映射外,还学习了额外的对偶回归映射,用于估计下采样内核并重建LR图像,从而形成一个闭环以提供额外的监督。
CVPR2020丨DRN:用于单图像超分辨率的对偶回归网络