labelImg标注数据集(yolov5篇)

labelImg下载

labelImag在github上面有,可自行下载
下载链接: labelImg-master.

运行及用labelImg标注数据集

1.修改标签
在data/predefined_classes里面修改里面的class,比如我的标签为can和bottle就按这个格式改
在这里插入图片描述
在这里插入图片描述
2.然后直接点击labelImg.py文件打开
运行环境一般有python的idle都可以直接打开
如果是pycharm就要在pycharm打开代码,然后手动run
在这里插入图片描述
3.打开后将格式改成yolo
在这里插入图片描述
4.选择图片位置和我们标注的txt文件保存的位置
一般用labelImg我们都要在文件中创建images文件夹和labels文件夹
将需要标注的图片放在images文件夹中,labels文件夹暂时不用放东西,到时候会自动生成标注的txt文件
然后Open Dir选择images,Change Save Dir选择labels
下图为我的数据集保存的位置
在这里插入图片描述
5.然后就可以开始标注我们的数据集了
按“w”键可以开始标注
按“a”键是上一张
按“d”键是下一张
6.自动保存
如果我们需要快速标注数据集,可以在view/atuo save mode选择自动保存,这样按下一张就不会跳出是否保存的选择框了
在这里插入图片描述
7.更加快捷操作
如果标注的时候很多张都是can(易拉罐),就可以在右上角将"use default label"勾选上,在后面填上can
在这里插入图片描述

补充

1.在yolov5的train中我们已经标注了数据集,那怎么让yolov5将images和labels一一对应呢?
这样就要用到yaml文件了
我们执行train指令时,会指定一个–data中的yaml文件来执行
所以yaml文件就要正确指出images和labels的位置

python train.py --img 640 --batch 64--epochs 600 --data /content/drive/MyDrive/yolov5-master/traindata/traindata.yaml --weights yolov5s.pt --nosave --cache

2.如何编写我们自己的yaml文件?
在编写自己的yaml文件之前,我们要先参考模板,然后按照模板改就好了
首先按照yolov5-master/data/coco128.yaml路径找到yolov5给我们提供的官方文件。
coco128.yaml源码为

# COCO 2017 dataset http://cocodataset.org - first 128 training images
# Train command: python train.py --data coco128.yaml
# Default dataset location is next to /yolov5:
#   /parent_folder
#     /coco128
#     /yolov5


# download command/URL (optional)
download: https://github.com/ultralytics/yolov5/releases/download/v1.0/coco128.zip

# train and val data as 1) directory: path/images/, 2) file: path/images.txt, or 3) list: [path1/images/, path2/images/]
train: ../coco128/images/train2017/  # 128 images
val: ../coco128/images/train2017/  # 128 images

# number of classes
nc: 80

# class names
names: [ 'person', 'bicycle', 'car', 'motorcycle', 'airplane', 'bus', 'train', 'truck', 'boat', 'traffic light',
         'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 'cat', 'dog', 'horse', 'sheep', 'cow',
         'elephant', 'bear', 'zebra', 'giraffe', 'backpack', 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee',
         'skis', 'snowboard', 'sports ball', 'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard',
         'tennis racket', 'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl', 'banana', 'apple',
         'sandwich', 'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 'cake', 'chair', 'couch',
         'potted plant', 'bed', 'dining table', 'toilet', 'tv', 'laptop', 'mouse', 'remote', 'keyboard', 'cell phone',
         'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', 'clock', 'vase', 'scissors', 'teddy bear',
         'hair drier', 'toothbrush' ]

然后我们需要将源码改为

# COCO 2017 dataset http://cocodataset.org - first 128 training images
# Train command: python train.py --data coco128.yaml
# Default dataset location is next to /yolov5:
#   /parent_folder
#     /coco128
#     /yolov5


# download command/URL (optional)
#download: https://github.com/ultralytics/yolov5/releases/download/v1.0/coco128.zip

# train and val data as 1) directory: path/images/, 2) file: path/images.txt, or 3) list: [path1/images/, path2/images/]
train: /content/drive/MyDrive/yolov5-master/traindata/images #colab中images的路径
val: /content/drive/MyDrive/yolov5-master/traindata/images  #colab中images的路径

# number of classes
nc: 2	#标签数量

# class names
names: [ 'can','bottle']	#你的所有标签名(与标签数量对应)

将修改好的coco128.yaml文件放到triandata下与images和labels在同级文件夹下(可以修改成容易识别的名字)
在这里插入图片描述

3.修改models文件
一般我们都是用yolov5s.pt训练自己的模型,这样会比较小和比较快
然后按路径找到yolov5/models/yolov5s.yaml文件
在这里插入图片描述
将里面的nc改成你的标签数(与上面修改的coco128.yaml文件的nc一致)
在这里插入图片描述
然后就可以按照我之前发布的教程继续训练自己的数据集了。
链接: colab和win10系统下yolov5的安装及训练自己的训练集.

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐