yolov5制作和训练自己的数据集

官方参考:Train Custom Data · ultralytics/yolov5 Wiki · GitHub

目录

1、标注数据

 2、修改yolov5配置文件

3、在视频和图片上添加识别的数量和类别(计数暂时不会)


1、标注数据

采用makesense.ai网站进行数据标注

Make Sense

将图片上传到网站,并且选择目标检测

yolov5制作和训练自己的数据集_第1张图片

 创建新标签,也可以直接在txt文件里写好直接导入

yolov5制作和训练自己的数据集_第2张图片

 对图片进行标注

yolov5制作和训练自己的数据集_第3张图片

标注完成后点击Actions--Export 输出标签,需要哪种形式的标签就选哪个

yolov5制作和训练自己的数据集_第4张图片yolov5制作和训练自己的数据集_第5张图片

 可以按照我这样,新建文件夹,放入图片和标签,在test和train都放入图片和标签

yolov5制作和训练自己的数据集_第6张图片

 2、修改yolov5配置文件

复制一份coco.yaml改名为自己的配置文件,修改训练集和测试集路径,类别数和类别名称,类别名称的顺序有讲究,和上边创建标签时的顺序一样(标签还得是英文,中文报错了)yolov5制作和训练自己的数据集_第7张图片

 然后修改train的main函数里的data这一项为我们自己的配置文件,修改完成后即可运行

yolov5制作和训练自己的数据集_第8张图片

yolov5制作和训练自己的数据集_第9张图片

 运行结果保存在runs--train--新的exp下,其中best.pt为精度最高的模型,last为最新训练的模型,可以在detect中来用我们训练好的模型预测

yolov5制作和训练自己的数据集_第10张图片

效果还不错,最后我用的是40张图片训练,10张图片测试,200轮

视频参考

3、在视频和图片上添加识别的数量和类别(计数暂时不会)

首先在detect.py中找到这一行,加上一个输出识别的变量s_output

yolov5制作和训练自己的数据集_第11张图片

然后找到下面,按照上边s的写法,我们添加s_output

s_output += f"{n} {names[int(c)]}{'s' * (n > 1)} "

yolov5制作和训练自己的数据集_第12张图片

 找到下边,在if save_img后添加,最后运行即可,exp中的图片和视频就会显示识别效果

cv2.putText(im0, f"{s_output}", (5, 50), cv2.FONT_HERSHEY_SIMPLEX, 1.2,(0, 0, 255), 2)

yolov5制作和训练自己的数据集_第13张图片

你可能感兴趣的:(动手学习深度学习,人工智能,深度学习,神经网络)