某盾之滑块识别

滑块可以使用cv2进行图像对比识别,也可以使用目标检测方式进行识别,目标检测推荐yolov5,这个不管是滑块还是点选都是很好用的。

1.安装

GitHub - ultralytics/yolov5: YOLOv5 🚀 in PyTorch > ONNX > CoreML > TFLite

直接把项目拉下来就行。

虚拟环境下安装一下依赖pip install -r requirements.txt

之后就能用了。

对于yoloV5来说,最最关键的就是数据集的格式要满足要求。VOC格式并不能满足yoloV5的格式,所以我们需要用程序来替换

训练自定义模型之 yoloV5官方教程

Train Custom Data · ultralytics/yolov5 Wiki · GitHub

2.目录要求

yoloV5数据集位置和目录不支持中文路径。有能力的大佬们可以自己修改这个BUG。

yoloV5数据目录要求

images 下需要有:train / val与labels目录下文件名字一致

labels 下需要有: train / val 与images目录下文件名字一致

数据格式:类别与四个坐标归一化后的值

train.txt 所有参与训练的绝对路径

val.txt 所有参与验证的绝对路径

3.使用标注助手标注图片

将图片放到D:\yolov5-master\mydata\tongdun\JPEGImages目录下,进行标注

导出标注到Annotations目录下

4.如何将 VOC 数据集修改为 符合yoloV5条件的数据集?

1_makedir.py 创建yolo需要的目录

2_movefiles.py 把VOC标注好的数据,调整为符合yoloV5的数据

两个文件就完活。给大家写好了。

这两个文件的作用就是把VOC标注好的数据,调整为符合yoloV5的数据

2_movefiles.py 注意:文件需要自己修改类别,否则 labels会生成空文件

makedir.py

import os


#创建yolo需要的目录

baseDir = 'mydata/'
productDir = 'tongdun' #自定义目录
# 第一步。对目录环境进行检查,是否满足处理要求
def file_exists(filename, message):
    if not os.path.exists(filename):
        raise FileExistsError(message)
def make_dirs(dirs):
    try:
        os.makedirs(dirs)
    except FileExistsError:
        print(dirs + ' 目录存在,自动跳过')

# 第二步。创建关键目录
file_exists('Annotations', 'VOC标注,Annotations目录不存在')
file_exists('JPEGImages', 'VOC标注,JPEGImages 图片目录不存在')
make_dirs(baseDir+productDir+'/images/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

liberty888

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值