LabelImg使用笔记

LabelImg使用笔记

文章目录

  • LabelImg使用笔记
    • 一、LabelImg简介
      • 1.1、特性
      • 1.2、LabelImg的热键
    • 二、LabelImg安装
    • 三、3种格式的使用
      • 3.1、VOC格式标注
      • 3.2、yolo格式标注
      • 3.3、json格式
    • 四、LabelMe 和 LabelImg适用场景

一、LabelImg简介

LabelImg 是一个用于图像标注的开源工具,它提供了一个用户友好的图形界面,用于手动标记图像中的物体或区域,并生成相应的标注文件。这个工具通常用于计算机视觉和机器学习项目中,尤其是目标检测任务。

1.1、特性

LableImg具备以下特性

  1. 支持多种表注格式(Pascal VOC 格式、YOLO 格式、COCO 格式)
  2. 跨平台支持: LabelImg 是一个跨平台的工具,可以在不同的操作系统上运行
  3. 支持快捷键: LabelImg 提供了一些快捷键,以加快标注的速度

如下图

1.2、LabelImg的热键

LabelImg的热键:

热键 含义
Ctrl+S 保存
Ctrl+d 复制当前标签和矩形框
Ctrl+r 更改默认注释目录(标签文件存放的位置)
Ctrl+u 加载目录中的所有图像(鼠标点击Open dir)
w 创建标注框(矩阵/三角)
d 下一张
a 上一张
delete 删除选定的矩阵框
space 将当前图像标记为已标记

二、LabelImg安装

说明:如果是有虚拟环境的,建议先创建一个虚拟环境,然后在安装LabelImg;如果不选择虚拟环境,默认为基础环境。

conda创建虚拟环境以及库的安装

pip install labelimg -i https://pypi.tuna.tsinghua.edu.cn/simple #安装

安装如下图:

LabelImg使用笔记_第1张图片

使用:打开cmd输入LabelImg/labelimg(大小写不做区分)

LabelImg

打开后,如下图所示:
LabelImg使用笔记_第2张图片

快捷使用(自动保存)

LabelImg使用笔记_第3张图片

三、3种格式的使用

3.1、VOC格式标注

如图:

保存后的标签文件xml格式:
图片大小、通道数、标签名称、选框位置的参数

<annotation>
	<folder>VOC2007folder>
	<filename>000030.jpgfilename>
	<source>
		<database>The VOC2007 Databasedatabase>
		<annotation>PASCAL VOC2007annotation>
		<image>flickrimage>
		<flickrid>340039936flickrid>
	source>
	<owner>
		<flickrid>uma_tyanflickrid>
		<name>?name>
	owner>
	<size>
		<width>500width>
		<height>375height>
		<depth>3depth>
	size>
	<segmented>0segmented>
	<object>
		<name>bicyclename>  
		<pose>Rightpose>
		<truncated>0truncated>
		<difficult>0difficult>
		<bndbox>
			<xmin>36xmin>
			<ymin>205ymin>
			<xmax>180xmax>
			<ymax>289ymax>
		bndbox>
	object>
	<object>
		<name>personname>
		<pose>Unspecifiedpose>
		<truncated>0truncated>
		<difficult>0difficult>
		<bndbox>
			<xmin>51xmin>
			<ymin>160ymin>
			<xmax>150xmax>
			<ymax>292ymax>
		bndbox>
	object>
	<object>
		<name>personname>
		<pose>Frontalpose>
		<truncated>0truncated>
		<difficult>0difficult>
		<bndbox>
			<xmin>295xmin>
			<ymin>138ymin>
			<xmax>450xmax>
			<ymax>290ymax>
		bndbox>
	object>
annotation>

3.2、yolo格式标注

在图形化界面中选择yolo的保存格式。如下图红框:

保存的文件:类别文件和坐标文件

LabelImg使用笔记_第4张图片

3.3、json格式

在图形化工具选择对应的JSON格式

保存后的json文件文件:类别+坐标

[
  {
    "image": "000030.jpg",
    "annotations": [
      {
        "label": "person",
        "coordinates": {
          "x": 99.5,
          "y": 226,
          "width": 97,
          "height": 132
        }
      },
      {
        "label": "person",
        "coordinates": {
          "x": 372.5,
          "y": 214,
          "width": 161,
          "height": 156
        }
      },
      {
        "label": "bike",
        "coordinates": {
          "x": 108,
          "y": 247,
          "width": 148,
          "height": 84
        }
      }
    ]
  }
]

四、LabelMe 和 LabelImg适用场景

LabelMe 和 LabelImg 都是用于图像标注的工具,但它们有不同的特点和用途,可以根据具体需求来选择使用哪一个

LabelMe:

  • 用途LabelMe 主要用于复杂的图像标注任务特别适用于语义分割和实例分割任务。它允许用户创建像素级的标注,以标识图像中的对象、区域和物体。
  • 功能LabelMe 提供了丰富的交互式标注工具,包括绘制多边形、矩形或自定义形状的区域以进行复杂的标注。它支持多种标注文件格式,具有数据管理和协作功能。
  • 优点适用于实例分割复杂标注任务多人协作。能够创建详细的像素级标注。
  • 缺点对于简单的目标检测任务,可能显得过于复杂,因为它更专注于像素级标注

LabelImg

  • 用途LabelImg 主要用于目标检测任务特别适合创建边界框标注。它通常用于标记物体的位置和大小。
  • 功能: LabelImg 提供了简单而直观的图形用户界面,用户可以加载图像并使用矩形工具创建目标边界框。它支持多种标注文件格式,适用于单人标注任务
  • 优点适用于目标检测任务,界面简单易用,适合快速标注。
  • 缺点对于像素级标注或实例分割任务,功能较为有限。

如果你需要进行像素级标注实例分割或复杂标注任务,LabelMe可能更适合;而如果只需要进行目标检测任务,LabelImg提供了更简单的界面和功能来快速创建边界框标注。

你可能感兴趣的:(LabelImg,LabelImg,conda,数据集标注)