赞
踩
由台北中研院和台北科技大学等机构的研究团队推出的新的目标检测算法,一作Wang Chien-Yao也是Yolov4、Yolov7的作者之一,之前在Alexey Bochkvoskiy(Yolov4的第一作者)的团队中。
YOLOv9是在YOLOv7的基础上进行的改进,指出现有方法存在如下的2个问题
针对以上两个问题,论文的解决方案(创新点)主要有以下2点:
GELAN = RepCSPNet + ELAN
RepConv[1]^:通过结构参数化思想,让训练网络的多路结构在推理时转换为单路结构,以节省内存并提高前向处理速度。
source:Ding X et al.
将ELAN中的卷积组,替换成带有RepConv的CSPNet,相当于增加网络的宽度。这种增加网络宽度的方式看似可以增加梯度流,但是损失了卷积的连贯性,这对于板端部署来说是不友好的,会增加耗时。
PGI:一种附属的监督框架(auxiliary supervision framework),用于在训练时提供更多的、更有效的监督信息,推理时该部分会被忽略。包含3个部分:
其实就是YOLOv7[2]里面辅助头的变种,YOLOv7中复用原网络提取的特征图:
source:Wang C Y et al.
YOLOv9直接从输入开始,搭建了跟主干网络类似的网络结构,使用辅助分支自己提取的特征来预测目标,从而计算辅助loss。在训练时相当于增加了一倍的权重,因此训练时间也会随着增加。
YOLOv7在计算辅助头时,使用的特征图是独立的,而YOLOv9是融合了多种特征图之后再计算辅助头的输出,详细见下一章的网络结构图。
解耦头解释:
source:Openmmlab
BBOX分支中,4表示anchor点到上下左右4个边界的距离,每个距离对应一个长度为reg_max的向量,reg_max一般设置为16。在网络预测完成后,将向量进行softmax,得到权重,这些权重再与[0,1,2,…, 15]进行加权,得到anchor点到4个边界的距离,从而得到预测框的信息。
source:Zhi Tian et al.
样本匹配依旧使用的是TaskAlign样本匹配。和YOLOv8、YOLOv6等算法保持一致;TaskAlignedAssigner的匹配策略就是:根据分类与回归的分数加权的分数去选择正样本。
t
=
s
a
∗
u
b
t = s^{a}*u^{b}
t=sa∗ub
针对每一个gt,其中s是每个anchor点对应的gt类别的分类置信度,u是每个anchor点对应预测的目标框与gt的IoU,a,b表示外部配置的指数,两者相乘就可以衡量对齐程度alignment metrics。再直接基于对齐程度选取topk作为正样本。
作者:圈圈虫
链接:https://www.zhihu.com/question/645376390/answer/3406848125
YOLOv9-c在ax650单帧平均耗时26ms。 YOLOv9-C是第三大的模型,稍微小一点的模型M,S相较于v8并没有显著的优势。
作者:JerryFxckingWong
链接:https://www.zhihu.com/question/645376390/answer/3409418697
bilibili上一位up在vis drone做的实验结果:
用split的方式看似丰富了所谓的梯度流,减少了参数量,但是大大增加了推理的时间,尤其对于端设备来说,这会导致推理的各种不连续性。
[1] Ding X, Zhang X, Ma N, et al. Repvgg: Making vgg-style convnets great again[C]//Proceedings of the IEEE/CVF conference on computer vision and pattern recognition. 2021: 13733-13742.
[2] Wang C Y, Bochkovskiy A, Liao H Y M. YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2023: 7464-7475.
[3] YOLOv8:https://github.com/ultralytics/ultralytics/tree/main
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。