labelme制作数据集
- 首先安装labelme工具
pip install pyqt5
pip install labelme
- 运行labelme
labelme
- 会出现下图所示窗口,

- 点击Open Dir 打开存放数据集的文件夹。
- 点击Edit->Create-Rectangle开始做框
- 标注label,点击ok保存

文件夹下会出现对应图片.json文件标注信息

接下来用以下代码生成数据集对应的train.txt文件和label.txt文件
# coding:utf-8
# 生成darknet需要的标签
import os
import os.path as path
import json
# 保存所有类别对应的id的字典
class_id_dict = {
}
# 判断是不是图片
def isPic(basename):
file_type = basename.split('.')[-1]
pic_file_list = ['png', 'jpg', 'jpeg', 'BMP', 'JPEG', 'JPG', 'JPeG', 'Jpeg', 'PNG', 'TIF', 'bmp', 'tif']
if file_type in pic_file_list:
return True
return False
# 判断这个图片有没有对应的json文件
def has_json(img_file):
# 得到json文件名
base_name = path.basename(img_file)
dir_name = img_file[:len(img_file) - len(base_name)]
json_name = base_name.split('.')[0]
json_name = json_name + '.json'
json_name = path.join(dir_name, json_name)
if path.isfile(json_name):
return json_name
return None
# 生成file_name的label文件,并重新写入 content_list 中内容
def rewrite_labels_file(file_name, content_list):
with open(file_name, 'w') as f:
for line in content_list:
curr_line_str = ''
for element in line:
curr_line_str += str(element) + ' '
f.write(curr_line_str + '\n')
return
# 生成file_name的训练图片路径文件
def rewrite_train_name_file(file_name, content_list):
with open(file_name, 'w') as f:
for line in content_list:
f.write(str(line) + '\n')

本文详细介绍使用labelme工具制作数据集的过程及PyTorch-YOLOv3的训练方法,包括环境搭建、配置修改、常见问题解决等关键步骤。

12万+

被折叠的 条评论
为什么被折叠?



