官方参考:Train Custom Data · ultralytics/yolov5 Wiki · GitHub
目录
1、标注数据
采用makesense.ai网站进行数据标注
将图片上传到网站,并且选择目标检测
创建新标签,也可以直接在txt文件里写好直接导入
对图片进行标注
标注完成后点击Actions--Export 输出标签,需要哪种形式的标签就选哪个
可以按照我这样,新建文件夹,放入图片和标签,在test和train都放入图片和标签
2、修改yolov5配置文件
复制一份coco.yaml改名为自己的配置文件,修改训练集和测试集路径,类别数和类别名称,类别名称的顺序有讲究,和上边创建标签时的顺序一样(标签还得是英文,中文报错了)
然后修改train的main函数里的data这一项为我们自己的配置文件,修改完成后即可运行
运行结果保存在runs--train--新的exp下,其中best.pt为精度最高的模型,last为最新训练的模型,可以在detect中来用我们训练好的模型预测
效果还不错,最后我用的是40张图片训练,10张图片测试,200轮
视频参考
3、在视频和图片上添加识别的数量和类别(计数暂时不会)
首先在detect.py中找到这一行,加上一个输出识别的变量s_output
然后找到下面,按照上边s的写法,我们添加s_output
s_output += f"{n} {names[int(c)]}{'s' * (n > 1)} "
找到下边,在if save_img后添加,最后运行即可,exp中的图片和视频就会显示识别效果
cv2.putText(im0, f"{s_output}", (5, 50), cv2.FONT_HERSHEY_SIMPLEX, 1.2,(0, 0, 255), 2)
4、本地配置完毕能训练了,放到平台上跑
需要把datasets中的train文件夹下和val文件夹下的cahe文件删除(保留的是上一次运行成功后的路径,运行train时不会再次扫描图片和标签),在重新配置路径才能运行成功
| [![](https://img-blog.csdnimg.cn/img_convert/5ecf066b6c86db651c102453663c3121.jpeg =100x)](http://www.relxdingyilang.cn/) | [点击访问博客查看更多内容](http://www.relxdingyilang.cn/) |
|------------------------------------------|-- |