赞
踩
中央处理器CPU:Intel® Core™ i5 7400 3.00 GHz
运行内存:16 GB
图形处理器GPU:NVIDIA- Tesla M40 12G
系统:Windows 10专业版22H2操作系统
YOLO-v5(官方地址):YOLO-v5
Pytorch(官方地址):Pytorch
Miniconda(清华镜像):Miniconda
首先,进入GitHub下载YOLO-v5框架。
在pycharm中配置环境,并安装相应的库,使用清华的镜像源下载速度会更快。
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
库的版本太新,可能会报错,可以参考我安装的版本
库名 | 版本 |
---|---|
python | 3.9.13 |
torch | 1.12.1+cu113 |
torchvision | 0.13.1+cu113 |
torchaudio | 0.12.1 |
pandas | 2.0.3 |
Pillow | 9.5.0 |
numpy | 1.25.1 |
matplotlib | 3.7.2 |
创建一个新的文件夹,用于存放YOLO-v5官方提供的预训练权重
此时我们返回到YOLO-v5-GitHub官方下载权重文件,点击蓝色超链接即可进行下载
这是我们已经下载好的权重文件
需要的环境和文件都已经准备完成了,接下来我们就可以进行detect(检测)测试环境搭建是否正常。
python detect.py --weights weights/yolov5s.pt --source data/images
--weights的意思是指定权重文件,–source的意思是指定检测文件地址
来看看我们训练之后的结果,进入runs–>detect–>exp 里面有所有预测好的照片
可以正常检测出人、巴士,说明我们YOLO环境搭建没有问题
经过上面的学习,我们的YOLO-v5环境搭建已经完成了,接下来教大家如何使用YOLO-v5制作自己的数据集
准备yolo格式的数据集,大部分CVer都会使用labelImg进行数据的标注。
pip install labelimg -i https://pypi.tuna.tsinghua.edu.cn/simple
得到YOLO格式的txt文本文件。
一张张图片进行标注,得到全部数据。
博主这里制作了54张苹果图像标签,其中训练集34张,测试集20张,如有需要可滴滴博主获取。
在YOLO-v5框架的中创建一个文件夹‘datasets’,用于存放数据集。
制作完的YOLO数据标签后需要分门别类,图片文件夹中就是存放图片,标签文件夹就是存放标签,所以在datasets中创建需要新建两个文件夹,一个是图片,一个是标签。
在images(图片)和labels(标签)中还需分别再创建两个文件夹,一个是train(训练),一个是val(测试)存放图片数据和标签数据。
总体的文件夹架构如图所示。
这块创建的文件夹有点多,有点绕,希望大家能看懂。
经过上面的学习,我们的数据集已经准备好了,接下来教大家如何在YOLO框架中添加数据源和修改网络模型
修改数据源:\data\coco128-apple.yaml,先复制一份,避免把配置搞乱无法复原。
首先,修改数据集的训练数据源地址,需要将datasets文件夹的路径填入。其次,需要更改为你所需目标检测的标签名称(博主这里只检测苹果一种)。
修改模型配置文件:models/yolov5x-leaf.yaml
这里只需要修改nc数,nc数指的是你目标检测的种类数,博主这只检测苹果,所以nc=1。
经过上面的学习,我们的一切准备工作都已就绪,接下来教大家如何在YOLO框架中训练自己的数据集
现在就可以开始网络训练了!!!
使用预训练权重yolov5s.pt,使用默认yolov5s网络框架进行训练,训练轮次为100轮。
python train.py --weights weights/yolov5s.pt
最后可以在run文件夹中查看训练后的数据文件。
使用detect.py进行测试,–weights选择训练完毕的权重文件,–source选择需要测试的图片。
python detect.py --weights run/train/exp/weights/best.pt --source data/images
我在训练中代码报错,提示没有将git添加进环境变量
只需要在train.py中添加这行代码即可!
os.environ["GIT_PYTHON_REFRESH"] = "quiet" # 把git加入环境变量中
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。