博主也是初学者,最近刚学完李沐的动深和yolo部分内容,写的错误的地方还请指出


yolov5整体网络架构

目标检测网络中使用adamw优化器 目标检测yolov5_Powered by 金山文档


input部分,一般为图片输入

yolov5的图片输入部分,使用了Mosaic进行数据增强,将几张图片融合在一起,丰富了检测目标的背景,同时在计算batch_size normalization 时计算更快

backbone部分,一般为提取特征(feature_map)

使用Focus进行切片操作,切成很多特征图(转换为单张feature_map很小,通道数较多),不属于下采样

使用了CSP结构,将feature_map分为两个part,一个part用于继续使用网络处理,其余经过简单处理直接加在第一个part的输出上(整体与ResNet有区别,ResNet是整个加上去)



目标检测网络中使用adamw优化器 目标检测yolov5_目标检测_02


head部分,一般用于输出预测

和yolov3,yolov4类似,生成多尺度的anchors,可以进行多尺度的预测

同时,从yolov3开始使用logistic回归代替了softmax,可以进行多标签判定

以上是对于yolov5的简单理论介绍,下面进行一个简单的yolov5实战

安装yolov5 7.0

通过终端拉取yolov5安装包

要求在 Python>=3.7.0 环境中安装 requirements.txt ,且要求 PyTorch>=1.7

pytorch一定要安装gpu版本,不然训练速度会很慢

git clone https://github.com/ultralytics/yolov5

国内github访问速度较慢,可以使用镜像源

git clone https://gitcode.net/mirrors/ultralytics/yolov5.git

接着是安装依赖项

cd yolov5
pip install -r requirements.txt

如何测试安装是否成功?

linux系统,在yolov5文件夹输入

python detect.py

若linux系统中有多个python版本,有时候需要

python3 detect.py

windows系统则直接运行python文件即可

若运行成功且在runs/detect/exp有处理好的图片则说明运行成功

注:多次运行会出现exp1,exp2等等,如果你拉取的yolov5不是官方文件会出现这个问题

另外,在yolov5运行过程中经常出现如下字体缺少报错

Downloading https://ultralytics.com/assets/Arial.ttf

然后一直下载不下来(下载很慢之类的),可以先把这个字体下载好放在yolov5根目录里面

方法:

linux系统直接使用如下代码拉去字体文件

wget https://ultralytics.com/assets/Arial.ttf

windows系统可以下载好文件后拷贝