论文: https://arxiv.org/abs/2207.02696
Github: https://github.com/WongKinYiu/yolov7

YOLOV7的一些理解
1.摘要
Yolov7是Yolov4团队的作品,受到了yolo原作者的认可,论文发布后就引起了较大的关注;Yolov7通过一系列优化和技巧的组合,截止至论文发布时间[2022年7月],在5FPS到160FPS的范围内,无论是速度或是精度,都超过了已知的检测器,并且在GPU V100上进行测试, 精度为56.8% AP的模型可达到30 FPS(batch=1)以上的检测速率,与此同时,这是目前唯一一款在如此高精度下仍能超过30FPS的检测器。
2.创新点
- 高效的网络结构 : 修改网络组件,引入ELAN结构
- 动态标签分配策略 : 结合yolov5的跨网格匹配策略及yolox的动态网格策略SimOTA
- 提出了一些Bag-of-Freebies方法:不增加推理时间的前提下,提高检测精度
- 辅助头训练策略
- 模型重参数化
3.具体工作
3.1.网络结构优化
yolov7整体的网络架构还是延用yolov5,只是对部分组件进行了修改或替换;
Modify-1: 3层conv代替stem模块,实现两倍下采样
- Conv仍然是:卷积 + BN + SiLU三件套

Modify-2: 引入ELAN模块代替CSP模块
- ELAN的这种结构的一个优势就是每个branch的操作中,输入通道都是和输出通道保持一致的[网络设计的一个高效准则]
- 仅仅是最开始的两个1x1卷积是有通道变化的


Modify-3: 下采样模块(Maxpling + Conv)
- 下采样的实现目前主要两种方法: 最大池化、步长为2的卷积,而yolov7下采样模块秉持着”大人全都要”的原则,同时包含两者;
- 左边的分支主要采用maxpooling(MP)来实现空间降采样,并紧跟一个1x1卷积压缩通道;
- 右边先用1x1卷积压缩通道,再用步长为2的3x3卷积完成降采样
- 最后,将两个分支的结果合并,最终得到输出通道数等于输入通道数,但空间分辨率缩小2倍的特征图

Modify-4: Neck部分仍然延用

本文详细介绍了YOLOv7的创新点,包括网络结构优化、辅助头训练策略、动态标签分配策略和重参数结构。通过这些优化,YOLOv7在速度和精度上超越了现有的检测器,成为唯一在高精度下超过30FPS的模型。此外,还探讨了如何通过结构重参数化在训练和推理之间找到平衡,以提高推理效率。
最低0.47元/天 解锁文章
611

被折叠的 条评论
为什么被折叠?



