数据集打标签labelme安装及使用教程

简介

数据标注的工具包括以下几种:

LabelImg:一款图形图像标注工具,用Python编写,并将Qt用于其图形界面。可以用于进行目标检测项目的标注工作,支持2D矩形框标注。

Labelme:一款开源的图像标注工具,由Visual Geometry Group开发。可以在线和离线使用,支持多边形分割、语义分割、2D框、线标注、点标注。

VIA-VGG Image Annotator (VIA):一款开源的图像标注工具,由Visual Geometry Group开发。可以在线和离线使用,支持多边形分割、语义分割、2D框、线标注、点标注。Version 3增加了对视频和音频的标注以及人脸标注。

RectLabel:一款目标检测标注工具,支持导出YOLO、KITTI、COCO JSON与CSV格式,读写Pascal VOC格式的XML文件。

VOTT:微软发布的一款基于JavaScript开发用于图像目标检测的标注工具,使用React+Redux进行开发,支持Windows和Linux平台运行。软件提供了基于CNTK训练的faster-rcnn模型进行自动标注然后人工矫正的方式,能大幅减轻标注所需的工作量。

OpenCV/CVAT:一款开源的计算机视觉库,提供了多种标注类型,包括多边形分割、语义分割、2D框、线标注、点标注等。同时支持视频标注和多种文件导出格式,如CVAT for video、CVAT for images、PASCAL VOC等。 LableBox:一款WEB模式下的标记工具,提供自定义注释API支持,纯JS + HTML支持。

我们这里主要介绍一下具Labelme

一、Labelme的安装

官网:https://github.com/wkentaro/labelme

使用pip命令进行下载

首先安装labelme所需要的依赖环境

python 复制代码
 pip install pyqt5
python 复制代码
Pip install pillow

安装labelme

python 复制代码
pip install labelme

指定版本加上镜像

python 复制代码
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple labelme==5.0.1

二、使用Labelme

在终端输入命令labelme启动,进行下面页面

上面工具栏可以打开图片或者打开文件夹进行标注,

给各个数据打上标签,默认保存为json格式文件

标注完之后点击save进行保存,注意:最好把标注完的json文件与原图存放在一个目录下,这样在后期查看的时候可以看到原图与标注区域的叠加,而不单单是原图。

json文件包含内容

包含你在图片的标注标签的数量与标注框的位置信息

三、标签格式转换

  1. 格式差异说明
    • labelme 标注格式:x1,y1,x2,y2(目标检测的对角坐标格式)
    • YOLO-V3 标注格式:Cx,Cy,W,H(相对位置,取值范围 0-1,即中心点横纵坐标、宽高的相对比例)
  2. 转换工具
    • 脚本文件:json2yolo.py
    • 位置:在utils文件夹中
    • 功能:将 labelme 生成的 json 标签文件转换为 YOLO-V3 支持的格式
  3. 文件路径
    • json 文件路径(labelme 生成标签的文件夹):...\PyTorch-YOLOv3\PyTorch-YOLOv3_myedit\data\label,包含dog.jsoneagle.jsonfield.jsongiraffe.jsonherd_of_horses.jsonmessjon.jsonperson.json等文件
    • 转换后输出路径:data\custom\labels,生成对应名称的 txt 文件(如dog.txteagle.txtfield.txt等),txt 文件内是 YOLO 格式的标注数据(如field.txt中内容为相对坐标数值)
  • abelme 是常用的图像标注工具,输出的 json 文件记录目标的对角坐标(x1,y1,x2,y2);而 YOLO-V3 模型训练需要的是目标中心点和宽高的相对比例(Cx,Cy,W,H,取值 0-1),因此需要格式转换。
  • 通过utils文件夹中的json2yolo.py脚本,将 labelme 生成的 json 文件(存放在指定label文件夹)转换为 YOLO 格式的 txt 文件,并输出到data\custom\labels路径下,最终 txt 文件中的数据可直接用于 YOLO-V3 模型的训练。
相关推荐
超龄超能程序猿4 小时前
YOLOv8 五大核心模型:从检测到分类的介绍
yolo·分类·数据挖掘
无能者狂怒4 小时前
[硬核] C++ YOLOv8 Onnx 加速部署(源码深度解析:动态Batch+CUDA加速+预处理对齐):从 V5 到 V8 的无缝迁移与避坑指南
yolo
无能者狂怒6 小时前
YOLO C++ Onnx Opencv项目配置指南
c++·opencv·yolo
Coding茶水间10 小时前
基于深度学习的水果检测系统演示与介绍(YOLOv12/v11/v8/v5模型+Pyqt5界面+训练代码+数据集)
图像处理·人工智能·深度学习·yolo·目标检测·机器学习·计算机视觉
夏天是冰红茶12 小时前
YOLO目标检测模型如何对接Apipost平台
yolo
q_302381955612 小时前
告别“笨重”检测!VA-YOLO算法让疲劳驾驶识别更轻更快更准
算法·yolo
AI街潜水的八角13 小时前
基于YOLOv12摔倒检测系统1:摔倒检测数据集说明(含下载链接)
yolo
YANQ66215 小时前
13.长视频和短视频的目标追踪(yolo_insightface模型)
yolo
前网易架构师-高司机19 小时前
标注好的胃病胃炎胃溃疡数据集,支持yolo,coco json, pascal voc xml格式的标注
yolo·数据集·医学·胃病·胃炎
AI街潜水的八角19 小时前
摔倒检测和识别3:基于深度学习YOLOv12神经网络实现摔倒检测和识别(含训练代码、数据集和GUI交互界面)
深度学习·神经网络·yolo