labelimg安装及使用教学

发布时间:2026/10/31 10:44:28
labelimg安装及使用教学

文章目录

  • 1.labelimg下载安装
  • 2.labelimg介绍
  • 3.使用教学
    • :one:启动并配置 Labelimg
    • :two:开始标注
    • :three:理解标注产物
    • :four:标注核心原则
  • 4.创建yaml文件
  • 5.问题总结

1.labelimg下载安装

  1. 新建一个labelimg_env的conda环境

    conda create -n labelimg_env python=3.8

高版本python可能会导致labelimg闪退

  1. 安装labelimg
    pip install labelimg -i https://pypi.tuna.tsinghua.edu.cn/simple
  2. 打开labelimg

2.labelimg介绍

✅ 建议勾选 view 下的 Auto Save mode

常用快捷键:

  • W:创建标注框 (Create RectBox)

  • Ctrl + S:保存当前标注

  • A:上一张图片

  • D:下一张图片

  • Ctrl + D:复制当前标注框

  • Delete:删除选中的标注框


3.使用教学

1️⃣启动并配置 Labelimg

  1. 在终端中输入labelimg并回车,启动软件。
  2. 点击左侧菜单的“Open Dir”,选择创建的dataset/images/文件夹。
  3. 点击左侧菜单栏的“PascalVOC”按钮,将其切换到“YOLO”格式,确保按钮上显示的是YOLO。
  4. 点击左侧菜单的“Change Save Dir”,选择你创建的dataset/labels/文件夹。标注文件会自动保存在这里。

⚠️ 注:确保 view 下的 “Auto Save mode”是勾选状态

2️⃣开始标注

  1. 软件会自动加载images文件夹中的第一张图片。

  2. 按下快捷键W(或点击左侧的 “Create RectBox” 按钮)。

  3. 在图片中的“目标”周围按住鼠标左键拖动,画出一个紧密贴合的矩形框。

  4. 松开鼠标后,会弹出一个标签对话框,输入标签名。

  5. 点击 “OK”,第一个标注就完成了。

  6. 继续按W键,为另一个汉字创建另一个标注。

  7. 当前图片所有汉字都标注完毕后,按快捷键D切换到下一张图片,重复以上步骤。

3️⃣理解标注产物

  1. 在完成并保存一张图片的标注后,会在labels文件夹下看到一个与图片同名的.txt标签文件。

.txt文件的内容格式为YOLO格式<class_id> <x_center> <y_center> <width> <height>。

  1. classes.txt文件用于定义数据集中所有物体的类别。文件的每一行代表一个类别,其行号顺序(从0开始)直接对应标注文件中<class_id>的值。

建议:

  1. 标准的文件夹结构如下:
/你的项目文件夹/├── images/├── labels/classes.txt
  1. 基于此结构,推荐使用以下命令启动 LabelImg,以防止类别ID错乱:
# 1. 进入项目根目录 cd D:\Userfolder\Desktop\train # 2. 使用相对路径启动 labelimg ./images/ ./labels/classes.txt

or

labelimg D:\Userfolder\Desktop\train\images "D:\Userfolder\Desktop\train\labels\classes.txt"
  • 标记文件名要和对应图片名字要相同:

​ 通常创建images和labels文件存储照片和标记文件:

  • 训练集、验证集、测试集分开保存。

4️⃣标注核心原则

  1. 严丝合缝:标注框应尽可能紧密地贴合目标的边缘,避免包含过多的背景噪声。高质量的数据是训练好模型的第一步。

  2. 处理重叠目标:当多个目标重叠时,应为每一个目标都单独创建边界框,即使这些框会互相重叠。这对于确保后续算法(如孪生网络)能获取到独立的目标图像至关重要。

  3. 保持一致:整个数据集的标注标准要保持统一(例如松紧程度、是否标注被遮挡的目标等)。


4.创建yaml文件

YOLOv8需要一个配置文件(通常是.yaml格式)来告诉它数据集在哪里、有哪些类别。

创建一个data.yaml文件,内容如下

  • 训练集、验证集、测试集的位置在哪里

  • 总共有多少个类别

  • 每个类别的名称是什么

# 数据集根目录的路径path:D:\Userfolder\Desktop\Yolov8\datasets# 训练集图片文件夹train:images/train# 验证集图片文件夹val:images/val# 测试集图片文件夹test:images/test# 根据的 classes.txt 文件生成,索引号 0 对应 "target", 索引号 1 对应 "char"names:0:target1:char

5.问题总结

  1. 闪退原因:

    有中文路径、python版本太高、数据集没有class文件

  2. 只显示图片不显示标签:
    ① 检查label的文件夹中是否缺少classes.txt
    ② labelimg界面的“Change Save Dir”选择放置标签的路径