YOLO V5
Backbone
SPPF
SPP 是使用了3个kernel size不一样大的pooling 并行运算。SPPF是将kernel size为5的 pooling 串行运算,这样的运算的效果和SPP相同,但是运算速度加快。因为SPPF减少了重复的运算,每一次的pooling 运算都是在上一次运算的基础上进行的。
CSP-PAN neck
在YOLO V4中,作者仅仅使用了PAN模块,在PAN中的卷积操作为一般卷积操作。而在YOLO V5中,PAN中的卷积操作换为了CSP。如图,上图为YOLO V4中的PAN模块,下图为YOLO V5的CSP-PAN模块。
YOLO V5 CSP-PAN模块
Loss Function
Loss function 的组成和YOLO V3一样,同样是由 Classes loss
, Objectness loss
, Location loss
.
改进:
Location Loss
采用的是 CIOU Loss.Objectness Loss
在YOLO V3中 将IOU最大的设为正样本,将IOU小于阈值的设为负样本,其他的都不考虑。而在YOLO V5 中是计算所有样本的obj损失,采用CIOU作为标准。- 对于
Objectness Loss
同时也平衡了不同尺度的损失,针对三个预测特征层上的obj损失赋予不同的权重。
横纵比偏移优化
在YOLO V4对于x, y进行了优化使其对极限值0和1更加敏感一些。然而,对于横纵比同样存在问题,原始的公式中仅使用 来进行偏移,这样会导致偏移量没有限制,变得十分敏感。
而在 YOLO V5中对横纵比的偏移进行了优化,将其变成如下:
这在一定程度上限制了横纵比的偏移,YOLO V5作者所做的实验曲线如下。
正负样本选取
在YOLO V4的拓展基础上,YOLO V5 对正样本的选取同时加入了横纵比的限制。
文章出处登录后可见!
已经登录?立即刷新