YOLOv5训练自己的数据集(labelImg制作标签)

YOLOv5官方讲解: Train Custom Data - YOLOv8 Docs (ultralytics.com)

labelImg(制作标签用) :GitHub - liyunfei0411/labelimg-master

目录

1、Create dataset.yaml

 2、Create Labels

1、下载labelimg仓库并安装labelimg

 2、开始标注

①创建文件夹

②设置路径

③打标

 3、xml文件

 4、txt文件(YOLO v5)

3、Organize Directories

 4、运行命令行


1、Create dataset.yaml

将yaml文件放入yolov5/datasets文件夹中,此处命名为lego.yaml文件,接下来需要对yaml文件 进行修改。yaml文件主要进行2个设置:①dataset的路径设置;②classes的设置

①路径设置

(1)path:训练集和测试集所在的上一级文件夹

(2)train:训练集所在文件夹,路径为path/train

(3)val:验证集所在文件夹,路径为path/val

(4)test:测试集所在文件夹,路径为path/test,可不设置,为空

举例:

 ②classes设置

nc -- 类别数

类名字典 -- 编号: 类别名

例:0对应lego

 2、Create Labels

1、下载labelimg仓库并安装labelimg

https://github.com/liyunfei0411/labelimg-master.git

win+anaconda环境下根据提示进行安装  

打开Anaconda Prompt 后切换到labelimg文件夹输入以下命令

conda install pyqt=5
pyrcc5 -o libs/resources.py resources.qrc
python labelImg.py
python labelImg.py [IMAGE_PATH] [PRE-DEFINED CLASS FILE]

运行labelImg.py后顺利弹出以下界面即为成功

若运行labelImg.py时遇到报错

(py38) F:\labelimg-master>python labelImg.py
Traceback (most recent call last):
  File "labelImg.py", line 39, in <module>
    from libs.labelFile import LabelFile, LabelFileError
  File "F:\labelimg-master\libs\labelFile.py", line 10, in <module>
    from libs.pascal_voc_io import PascalVocWriter
  File "F:\labelimg-master\libs\pascal_voc_io.py", line 6, in <module>
    from lxml import etree
ModuleNotFoundError: No module named 'lxml'

安装这个包后就能顺利运行labelImg.py

pip install lxml

 2、开始标注

①创建文件夹

我在labelimg文件夹中创建了两个文件夹:images、labels。其中,images用来保存图片,labels用来保存标签的xml文件

     

②设置路径

放大后界面:

 

 open dir -- 图片所在文件夹,此处为C:\Users\r***\Pictures\labelimg\images

change save dir -- 用来保存标签的文件夹,此处为C:\Users\r***\Pictures\labelimg\labels

save下面是change save format,点击后即可切换为YOLO(如下图所示)。PascalVOC的保存格式为xml,yolo的格式为txt

  

③打标

设置号open dir后,中间会自动加载出images文件夹中的图片,就可以开始标注了。

按w -- 开始标注

按a -- 上一张

按d -- 下一张

按w进行标注,移动鼠标画框

 下面会弹出小框 

 填入所属的class(此处为person)后ok,再ctrl+s保存

完成一张的标注后,按d进行下一张,如果设置了auto save mode,labelimg会在加载上一张前自动替你保存(意思就是不需要再手动ctrl+s来保存了)

每完成一张图片,anaconda prompt会显示,labels文件夹中会多出一个xml文件。若images中的图片名为1.jpg,那么labels中对应的文件名为1.xml

 3、xml文件

记录一下xml中保存了什么信息

若有多个物体

 4、txt文件(YOLO v5)

当保存为txt文件时,labels文件夹内部如下所示,主要是包括①所设置的类别及对应编号的说明(classes.txt)②每张图片对应的bounding box信息(如67.jpg对应信息保存在67.txt中)

 

①classes.txt当中内容如下,classes由0开始编号

②73.txt当中内容:

其中第一列(15和16)代表对应class的编号,如15表示lego,16表示water;后四列是bounding box的边框信息。yolov5要求将坐标归一化到0-1,这里与xml当中的坐标不同

3、Organize Directories

因为YOLOv5会将路径中最后一个 /images/ 替换为 /labels/,所以labels文件夹放置位置如下

 4、运行命令行

(以下两种都可以)

F:\PycharmProjects\yolov5-master>python train.py --img 640 --epochs 3 --data datasets/lego.yaml --weights yolov5s.pt

F:\PycharmProjects\yolov5-master>python train.py --img 640 --epochs 3 --data datasets/lego1.yaml --weights yolov5s.pt

参考:(2条消息) YOLOV5-打标签建立自己的数据集_yolov5打标签_卿云阁的博客-CSDN博客

  • 10
    点赞
  • 56
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
### 回答1: 使用labelimg标注yolov5需要按照以下步骤进行: 1. 下载并安装labelimg软件,可以在GitHub上找到该软件的源代码并进行下载。 2. 打开labelimg软件,选择要标注的图片,并在左侧的工具栏中选择“Create RectBox”工具。 3. 在图片中选择要标注的物体,并用鼠标拖动出一个矩形框将其框起来。 4. 在矩形框下方的标签栏中选择该物体的标签,并在右侧的属性栏中填写该物体的其他信息。 5. 点击“Save”按钮保存标注结果,并将标注结果保存为yolov5所需的格式(如txt或xml格式)。 6. 将标注结果与原始图片一起放入yolov5训练集中,并使用yolov5进行训练和测试。 需要注意的是,在标注过程中要尽量减少误差,确保标注结果的准确性和可靠性。同时,要根据具体的应用场景和需求选择合适的标签和属性,以便更好地训练和测试yolov5模型。 ### 回答2: labelimg是一种标注工具,用于标注图像中的特定物体。其中,yolov5是一种基于深度学习的目标检测模型,能够在复杂背景下准确定位并识别物体。使用labelimg标注yolov5,需要以下步骤: 1. 下载labelimg工具并安装。该工具支持多种操作系统环境,包括Windows、Linux和MacOS。 2. 准备训练数据集,包括正样本(包含目标物体)和负样本(没有目标物体)。数据集需要按照一定规则组织,如每个图片应该有一个对应的XML文件,包含目标物体的位置和类别信息。 3. 使用labelimg打开数据集中的图片,通过标注工具手动画框选择目标物体,并设置所属的类别。同时,在右侧的XML编辑框中输入标注信息,可设置目标物体的坐标、宽度、高度和类别等。 4. 标注完一张图片后,保存标注信息并重复标注其他图片。需要注意的是,labelimg提供快捷键和自动保存功能,能够提高标注效率和准确性。 5. 标注完整个数据集后,将生成的XML文件导出到同一个文件夹中,并按照一定格式命名。在训练前,需要将数据集标签文件统一转换为yolov5所需的格式,即txt文本格式,方便后续导入模型进行训练。 总的来说,使用labelimg标注yolov5需要一定的专业知识和技术基础,能够快速标注图片并生成训练所需的数据集。同时需要注意标注过程中的精度和准确性,以提高模型的检测效果和准确度。 ### 回答3: yolov5是一种目标检测算法,可以对图片或视频中的目标进行快速准确的检测和识别。要训练yolov5模型,就需要一个标注好的数据集。标注工具可以让我们快速准确地对图片进行目标标注,不仅可以加快训练速度,也可以避免模型产生错误。 LabelImg是一种开源的标注工具,支持多种文件格式,包括PascalVOC、YOLO和ImageNet等。它可以在Windows、Linux和Mac系统中运行,功能强大、易于使用。以下是使用LabelImg进行yolov5目标检测模型训练的步骤: 第一步:安装LabelImg工具。可以在官网下载,也可以在Github上直接clone。 第二步:准备数据集。先把需要检测的图片放在同一个文件夹下,再根据需要识别的目标,新建一份label文件,以xml格式保存在同一文件夹下。标注时需要把图片批量导入到标注工具中,一张一张进行标注。 第三步:打开LabelImg工具,在界面上方选择Open Dir…,在弹出的文件选择框中选中需要标注的图片所在目录,即可打开目标图片。 第四步:选择创建lable的格式,此处需要开启YOLO格式,选择YOLO->yolov5。 第五步:添加物体。选择Create RectBox,然后使用鼠标框选出需要标注的物体,接着弹出一个窗口,输入所选区域对应的物体类别、置信度等信息,最后保存标注信息。 第六步:在保存当前标注xml的同时,在同一文件夹下生成对应的txt文件。 第七步:进行批量标注。在界面上方选择 Next Image,即可切换至下一张需要标注的图片,重复以上操作即可。 第八步:批量转换。多张图片标注完成后,需要把xml与图片一起存储在同一个目录下,使用工具集中的转换程序进行批量转换即可,转换后得到的标注文件可以直接用于yolov5训练过程。 以上就是使用LabelImg进行yolov5目标检测模型训练的步骤,需要注意的是标注时需要保持精准、快速的节奏,确保标注的数据质量和多样性,从而提高训练模型的准确性和鲁棒性。同时,需要充分利用yolov5模型的优势,调整模型的超参数和训练条件,进一步提高模型的性能。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值