不同点:
1. yolov4采用了较多的数据增强方法(图像增强方法(Data Augmentation)_YMilton的专栏-CSDN博客,博客中方法都使用),而yolov5进行了3中数据增强:缩放、色彩空间调整与Mosaic数据增强。
2. yolov5锚点框是基于训练数据集自动学习的,而yolov4没有自适应锚点框。
3. yolov5采用的激活函数包括leakyReLU和Sigmoid,yolov5的中间隐藏层使用的是leakyReLU激活函数,最后的检测层使用的是Sigmoid激活函数。而yolov4使用的是mish与leakyReLU激活函数,主干网络使用的mish。mish激活函数的复杂度较高。yolov4与yolov5的网络结构图如下博客YOLOv3、YOLOv4、YOLOv5、YOLOx的网络结构图(清晰版)_YMilton的专栏-CSDN博客
(1) leakyReLU
(2) mish
4. yolov5提供了两个优化函数Adam与SGD,并且都预设了与之匹配的训练超参数,默认使用SGD。而yolov4采用SGD优化函数。
5. yolo系列损失计算包括目标置信度、类别概率与边界框回归损失。yolov5中的边界框损失前期采用的是GIoU Loss,后期使用CIoU Loss,yolov4中采用的是CIoU Loss,与其他方法相比,CIoU带来了更快的收敛和更好的性能。
6. 目标检测在前向推理过程都会采用NMS(非极大值抑制),yolov4在前向推理的过程中使用的方法是DIoU_nms,而yolov5采用加权nms的方式。DIoU_nms的作用如下:
GIoU_nms在检测有遮挡重叠的物体时,效果优于传统的NMS。
7. yolov5在网络输入的第一层增加了Focus结构,yolov4没有这个操作。
8. 训练时间
yolov5的训练时间非常的迅速,速度上远超yolov4。
相同点:
1. yolov4与yolov5都使用CSPDarknet53作为网络的主干网络(backbone)。CSP全程Cross Stage Partial Networks。
2. PANET被认为是最适合yolo的特征融合网络,yolov4与yolov5都使用PANET作为Neck来聚合特征。
3. yolov4与yolov5的检测头(Head)版本相同,与yolov3的head相同。