yolov5初次使用教程
YOLO为一种新的目标检测方法,该方法的特点是实现快速检测的同时还达到较高的准确率。目前YOLO已经升级到YOLOv7了,并且YOLO的所有代码都是开源的,我们可以在github上下载;
1.yolov5源码的下载
- Yolov5 Github地址:https://github.com/ultralytics/yolov5
直接下载下来之后,了解一下项目的目录结构:
├── data:主要是存放一些超参数的配置文件(这些文件(yaml文件)是用来配置训练集和测试集还有验证集的路径的,其中还包括目标检测的种类数和种类的名称);还有一些官方提供测试的图片。如果是训练自己的数据集的话,那么就需要修改其中的yaml文件。但是自己的数据集不建议放在这个路径下面,而是建议把数据集放到yolov5项目的同级目录下面。
├── models:里面主要是一些网络构建的配置文件和函数,其中包含了该项目的四个不同的版本,分别为是s、m、l、x。从名字就可以看出,这几个版本的大小。他们的检测测度分别都是从快到慢,但是精确度分别是从低到高。这就是所谓的鱼和熊掌不可兼得。如果训练自己的数据集的话,就需要修改这里面相对应的yaml文件来训练自己模型。
├── utils:存放的是工具类的函数,里面有loss函数,metrics函数,plots函数等等。
├── weights:(自己创建的)放置训练好的权重参数。
├── detect.py:利用训练好的权重参数进行目标检测,可以进行图像、视频和摄像头的检测。
├── train.py:训练自己的数据集的函数。
├── test.py:测试训练的结果的函数。
├──requirements.txt:这是一个文本文件,里面写着使用yolov5项目的环境依赖包的一些版本,可以利用该文本导入相应版本的包。
2.下载预训练好的权重参数文件
- 下载地址:https://github.com/ultralytics/yolov5/releases
它的预训练模型已经更新到v7版本了,选择一个版本,并下载相对应的权重文件,我选择的是v5版本;
往下找到Assets,下载需要的预训练权重参数文件;并将下载好的权重文件放在weights文件夹下
我这里下载了四个
不同的预训练模型 ,效果和精度不一样
其中yolov5s目标检测速度最快,因为其网络参数最少,但相应的,检测效果相比是最差的
由于这个文件下载过慢,可能大家会找别人下载好的权重文件,但是找来的文件会因为版本过旧或其他原因出错,所以还是尽量自己下载;
3.安装Yolov5所需模块
源码下载完成后,用pycharm打开项目,并选择pytorch环境下的解释器,打开pycharm的命令终端,在中输入如下的命令,就可以安装了
pip install -r requirements.txt
4.Yolov5测试
使用源码中的Detect.py来测试,
在测试时需要改动Detect.py中两个地方:
由于版本等各种原因,运行会出现各种问题,按照网上的解决方法,一一解决之后就可以正常运行了;(忘记遇到过哪些问题了)
所以分享一下我改过的直接可以运行的源码
链接:https://pan.baidu.com/s/1x0eD0GasGeUtQ67YIvBLwQ
提取码:5p8s