慢慢写不着急
yolov5权重文件(百度网盘)
yolov5weight
提取码:g5jh
鉴于官网权重文件4个月没有跟新,放心食用(20201030)
weight V4.0
提取码:aljp
20210123
复制这段内容后打开百度网盘手机App,操作更方便哦
win10环境下环境配置以及训练
CUDA>=10.0,建议10.1或者10.2
自己去下载
安装位置建议默认,免得事多
添加环境变量
CUDnn和CUDA相同版本
cudnn下的bin、include、lib复制到cuda里面
如果cuda默认安装位置,应该就是和我一样
通过Anaconda环境配置环境
自己下载anaconda环境
使用anaconda powershell或者win10自带的powershell
创建一个python3.7或者3.8的环境
创建环境
conda create -n name python=3.7 #nanme自己改
进入环境
conda creative name
我直接进入我的conda环境的位置里面去配置yolov5
Anaconda\envs\name\yolov5
克隆github上面的库
git clone https://github.com/ultralytics/yolov5.git
安装依赖项
pip install -r requirements.txt
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple #清华源
pytorch安装失败
我安装的是CUDA10.2的版本选自己的版本
conda install pytorch torchvision torchaudio cudatoolkit=10.2 -c pytorch
基本上没什么问题了
测试
yolov5的权重已经放在了文章的开头
python test.py
自己去找输出,上面显示了输出结果的位置
训练
数据集格式
train文件下,一个image放所有图片一个labels放对应的txt文件
val、test同理
训练自己的数据集
配置一个data.yaml的文件
上面放上各个数据的路径(绝对路径也行)
nc类别数
name类别名
修改yolov5s.yaml文件
把nc数改成你的
如果你要用yolov5x,那就改yolov5x.yaml(同理)
关于yolov54个模型的区别自己查
s最小x最大
对应s训练时间最少,训练时间最大
x精度最好,s低一点
建议先s
开始训练
python train.py --data 'data.yaml' --cfg ./models/yolov5s.yaml --weights '' --name Myname
data.yaml就是上面配置的
用的是yolov5s初始话的
权重从0开始
命名
train.py的参数
epochs:指的就是训练过程中整个数据集将被迭代多少次,默认300,作者建议不少于300
batch-size:一次看完多少张图片才进行权重更新,默认16,更具显卡性能来
cfg:存储模型结构的配置文件
data:存储训练、测试数据的文件
img-size:输入图片宽高
rect:进行矩形训练
resume:恢复最近保存的模型开始训练
nosave:仅保存最终checkpoint
notest:仅测试最后的epoch
evolve:进化超参数
bucket:gsutil bucket
cache-images:缓存图像以加快训练速度
weights:权重文件路径
name: 重命名results.txt to results_name.txt
device:cuda device, i.e. 0 or 0,1,2,3 or cpu
adam:使用adam优化
multi-scale:多尺度训练,img-size +/- 50%
single-cls:单类别的训练集
关于恢复训练
python train.py --resume
如果报错已经存在XXXX文件,那就把这个文件切出去,然后重新上一个步骤