一.数据处理
用labelImg进行标注
标注软件下载地址: 链接:https://pan.baidu.com/s/1xYu2fCGgIp-lVO3fUHpdaQ 提取码:6666
1. 打开data目录下的predefined_classes.txt文件改成你需要的类
2. Open Dir 导入需要进行标注的图片文件夹
3. Change Save Dir 标注完成后生成文件所在文件夹
4. 如下图所示将模式切换成yolo模式(单机左边第八个图标)
pascalVOC模式生成的是.xml文件 yolo模式生成的是.txt文件
5. 单击键盘上’w’键进行框选
二.训练模型
1. 新建一个文件夹与yolov5文件夹同级
2. 在yb文件夹下新建两个文件夹
train文件夹用于存放训练数据集
valid文件夹用于存放测试数据集
更改data.yaml里的程序
train: ..\yb\train\images
val: ..\yb\valid\images
nc: 2
names: ['fishJ', 'fishL']
train和val是数据存放目录
nc :你训练的类别数
names: 训练类别名称
3. 在train文件夹和valid文件夹下分别新建两个文件夹
images文件夹用于存放图片
labels文件夹用于存放标签
(labels.cache是运行train.py生成的)
4. 更改/yolov5/models文件夹里yolov5l.yaml文件(我训练的是l模型)
# parameters
nc: 2 # number of classes
。。。。。。。。。。。。。。。。。(省略一下后面的程序)
只更改nc 这一行,将80改成你训练的类别数
**5.**运行 train.py文件
python train.py --img 640 --batch 1 --epochs 300 --data ../yb/data.yaml --cfg models/yolov5l.yaml --weights ''
我的电脑batch只能调成1要不然会报错。
三.bug及解决方法
1.内存空间不足
OSError: [WinError 1455] 页面文件太小,无法完成操作。 Error loading "E:\anaconda\anaconda\envs\yolov5_GPU\lib\site-packages\torch\lib\caffe2_detectron_ops_gpu.dll" or one of its dependencies.
解决方法 将batch参数改成1
等以后有钱了买个好点的显卡。。。。。
学习时间
2021.3.14