yolov5会通过数据加载器传递每一批训练数据,同时增强训练数据。数据加载器执行三种数据增强:缩放、色彩空间调整和镶嵌增强。
深度模型的影响时间与计算硬件、cnn结构和部署有关。yolov3在gtx1080ti下可以是50ms每秒,mssd分为v1、v2、v3。由于cnn的小结构和深度方向的设计思想,它被广泛应用于端到端。我对树莓派3b的影响在10fps左右,通过类似t
原理详解
yolov5是一种单级目标检测算法。该算法在yolov4的基础上,加入了一些新的改进思想,大大提高了其速度和精度。主要改进包括:
输入:在模型训练阶段,提出了一些改进思路,包括镶嵌数据增强、自适应锚盒计算和自适应图像缩放;
参考网络:融合了其他检测算法中的一些新思想,主要包括:focus结构和csp结构;
颈网:目标探测网往往在主干和最后一个头输出层之间插入一些层,yolov5中加入了fpnpan结构;
头部输出层:输出层的锚帧机制与yolov4相同,主要改进是训练时的损失函数giou_loss和预测帧筛选的欧弟_nm。
yolov5其实是yolov4的工程版。
v5版本并没有在v4版本上进行大规模的改进和创新,所以有人称v5为v4.5,v5或v4的版本改进如下:
1.数据增强。采用马赛克数据增强,即从train的数据集中选取四幅图片,在一幅大图的一定范围内随机选取中心点,在中心点的左上、左下、右上、右下放置一幅图片。这是否在一定程度上增加了批量,四合一图?当然,四张图上的标签也要相应更新;
2.dropblock机制。防止过拟合的常用方法是dropout,即随机杀死部分神经元,dropblock就是随机杀死一个区域的神经元。比如以前狗图片眼睛一个像素删除,现在整个眼睛删除;
3、标签平滑。让标签更平滑,才能让神经网络不那么自信。