1.首先给出yolox原模型的下载地址:
https://github.com/bubbliiiing/yolox-pytorch
百度网盘链接给出自己完整的模型(包括数据集以及权重文件):
链接:https://pan.baidu.com/s/1JNjB42u9eGNhRjr1SfD_Tw
提取码:otq0
2.训练模型:修改模型里面的数据集以及一些参数
1.选择配置好的深度学习环境
2.修改train.py里面的classes_path,将自己想要分类的类别填充进去
3.修改权重文件
4.修改冻结阶段和非冻结阶段的epoch 和batch_size,不启用冻结阶段
batch_size设置为8,因为设置为16之后发现爆显存了
epoch设置为600
5.划分训练集和测试集
为了省去不必要的麻烦,将自己的数据集名称改为VOC2007,放在VOCdevkit文件夹下面
然后运行voc_annotation.py
会生成这些文件
里面是图片的路径,以及标注框的坐标
6.在训练中遇到报错:Initializing libiomp5md.dll, but found libiomp5md.dll already
解决办法:
在训练代码的开头加上这一行代码:
import os
os.environ["KMP_DUPLICATE_LIB_OK"]="TRUE"
7.运行train.py,开始训练
8.得到训练结果和权重文件
2.将训练好的模型来进行测试
1.在yolo.py里面修改分类路径以及损失最小的模型权重文件的路径
2.遇到报错:No module named 'onnx',有包没有导入
直接点这个Install package onnx
导入成功,报错解决
3.运行predict.py,输入图片路径来进行测试
hat1.jpg
得到测试结果
hat2.jpg
得到测试结果
看的出来,效果还是很好的。