目标检测yolov5简单实战
Posted 西楼xilou
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了目标检测yolov5简单实战相关的知识,希望对你有一定的参考价值。
最近在学习计算机视觉目标检测的相关内容,主要学习了yolov5 7.0版本
博主也是初学者,最近刚学完李沐的动深和yolo部分内容,写的错误的地方还请指出
本文只会简单概述yolov5相关的原理,需要详细了解可以看如下博客
YOLO系列算法精讲:从yolov1至yolov5的进阶之路(2万字超全整理)_AI 菌的博客
yolov5整体网络架构
input部分,一般为图片输入
yolov5的图片输入部分,使用了Mosaic进行数据增强,将几张图片融合在一起,丰富了检测目标的背景,同时在计算batch_size normalization 时计算更快
backbone部分,一般为提取特征(feature_map)
使用Focus进行切片操作,切成很多特征图(转换为单张feature_map很小,通道数较多),不属于下采样
使用了CSP结构,将feature_map分为两个part,一个part用于继续使用网络处理,其余经过简单处理直接加在第一个part的输出上(整体与ResNet有区别,ResNet是整个加上去)
关于CSP,可以看这一篇博客
深度学习_经典网络_CSPNet网络详解_WeThinkIn的博客
neck部分,一般用于学习特征
使用了FPN+PAN,可以进行高低层特征融合
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系统可以下载好文件后拷贝
如果还是下载不了,可以使用我分享的这个文件
链接:https://pan.baidu.com/s/1-wvA_ft3q8WfWjPUWmyu-A?pwd=07l9
提取码:07l9
进行简单的yolov5实战
我是跟着这个博客做的,做出来的东西也差不多
【Yolov5】1.认真总结6000字Yolov5保姆级教程(2022.06.28全新版本v6.1)_若oo尘的博客-CSDN博客
唯一不同是我使用的是yolov5 7.0版本
我做出来的成品如下 目标检测王者荣耀-CSDN直播
以上是关于目标检测yolov5简单实战的主要内容,如果未能解决你的问题,请参考以下文章
TPH-YOLOv5 | 基于Transformer的YOLOv5小目标检测器 | 四头加注意力