跟土堆学yolov5目标检测p10自制数据集及训练集

如何制作和训练自己的数据集

  • 标注
  • 自己获得数据集(手动)-人工标注
  • 自己获得数据集-半人工标注
  • 仿真数据集(GAN、数字图像处理的方式(抠图贴图,具体位置是可知的))

可以搜索:synthetic data object detection github

 

 

 首先创建--data 文件 

  1. path为根目录 
    path: ../datasets/coco128  # dataset root dir
  2. 训练集和验证集的相对位置
    train: images/train2017  # train images (relative to 'path') 128 images
    val: images/train2017  # val images (relative to 'path') 128 images

      3.指定训练类别

# Classes (80 COCO classes)
names:
  0: person
  1: bicycle
  2: car
  ...
  77: teddy bear
  78: hair drier
  79: toothbrush

二、制作自己的数据集

下载四张汽车照片

 

 

 

 

 添加标签

标注数据集地址:https://www.makesense.ai/ 

GET STARTED

点击添加图片

选择并确定

Object Detection 目标检测

Image recognition 图像识别

选择目标检测

3.用文件添加label类别:换行分割

上传label.txt,显示找到两个labels

 重新编辑labels

 添加一列自行车

 参数解释:

Import Images:导入图片

Import Annotations :导入标注

Export Annotations:导出标注

Run AI locally:使用AI模型辅助标注

手动标注:Rect:矩阵标注;Point:点标注;Line:线标注;Polygon:多边形标注

 框选出车,并在右边选择类别

 标注人

使用人工智能标注

 选coco数据集

出错:因为car与Car大小写而以为有新的类别,故拒绝

 人工智能发现的图像,鼠标移到左上角点击“+”,右边选择类别

 添加后效果

 将重复的框删除,没标注的手动标注上

4.导出标注数据

选择Export Annotations

 选yolo格式并导出

 下载好的文件

 解压打开

 0 代表汽车 x中心,y中心,宽度,高度  yolo格式是归一化的坐标

1是Person 2是Bike

三、组织数据集

建一个文件夹为images,再建一个labels对应,在images和labels下在建立train和test

../datasets/coco128/images/im0.jpg  # image
../datasets/coco128/labels/im0.txt  # label

 在yolov5中创建mydata,再创建images和labels文件夹,按如下操作,注意对应

四、写--data 文件

 将data/coco128.yaml复制并重命名为mydata.yaml

copy并重命名

train是训练集,

val是训练过程中的测试集,是为了让你在边训练边看到训练的结果,及时判断学习状态。

test就是训练模型结束后,用于评价模型结果的测试集。

只有train就可以训练,val不是必须的,比例也可以设置很小。

test对于model训练也不是必须的,但是一般都要预留一些用来检测,通常推荐比例是8:1:1

按如下修改地址和类别:

path: mydata  # dataset root dir
train: images/train  # train images (relative to 'path') 128 images
val: images/train  # val images (relative to 'path') 128 images
test:  # test images (optional)

修改类别:可以不需要大写,因为对应的是类别数字

 

删除download 

保存文件

 将mydata.yaml路径拷贝到对应train.py  --data default参数中

 

 五、运行train.py

 结果保存在:

 

训练结束

 六、测试权重

 修改detect.py中的--weights  为 best.pt


设置--source 为训练数据集


检测结果如下:

 

 

 

 

 

 

 把数据集放到项目外面可以避免Pycharm检索浪费时间,或者调为exclude,这样pycharm就不会检索了

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值