labelimg是专注于标注矩形框的工具

目录

1  安装

2  可能遇到的问题

2.1  浮点型坐标问题

3  参数

4  标注文件类型

4.1  PascalVOC

4.2  YOLO

4.3  CreateML

5  自动保存

6  验证图像


1  安装

创建一个新的环境

然后激活环境

然后执行 labelimg

就可以打开了

打开后按w可以显示画框的坐标十字,点击左键移动鼠标然后再点击左键可以绘制矩形框,按D键可以切换到下一张

2  可能遇到的问题

2.1  浮点型坐标问题

当我们刚安装完成后,按w开始标注的时候,可能会爆出这个问题

找到提示的这个文件 E:\Anaconda\envs\labelimg\Lib\site-packages\libs\canvas.py,然后找到提示的行数(530行)

将drawLine()的参数全部转换为整形参数

之后再打开,然后画框就会遇到第二个问题

找到提示的代码、提示的行,将drawRect()的参数全部改为int

之后就可以正常画框了,然后用着用着可能会出现这个问题,同样是浮点的问题

将这一句的参数改为int

3  参数

labelimg有三个参数,一个选项,选项是-h,可以查看基本的使用方法

三个参数

  • image_dir 图片路径
  • class_file 标签文件
  • save_dir 存放路径

我们首先创建这三个东西

Annotations是空的文件夹,放标注文件用的

JPEGImages里面放的是要标注的图像

labels.txt是要标注的标签,我这里是马 狗 人

执行 labelimg ./JPEGImages labels.txt ./Annotations 后可以打开labelimg

标注好矩形框后会出现labels.txt中出现的标签

你不用参数直接打开labelimg也可以,打开后可以再labelimg中点击Open Dir可以选择图片路径,Change Save Dir可以选择标注文件存放路径

标签名称可以在画完矩形框后手动输入

4  标注文件类型

4.1  PascalVOC

在左侧可以进行选择PascalVOC

标注保存后会得到与图像同名的xml文件

内容如下,我们可以从中提取一些信息,比如

  • folder 标注时图像所在的文件夹名称
  • fliename 标注是图像的名称
  • path 标注是图像所在的路径
  • size
    • width 图像的宽度,单位px
    • height 图像的高度,单位px
    • depth 图像的通道数,3表示是彩色的图像
  • object 每画一个框就会多一个object
    • name 框子的标签
    • bandbox
      • xmin 框子的左上角点横坐标,单位px
      • ymin 框子的左上角点纵坐标,单位px
      • xmax 框子的右下角点横坐标,单位px
      • ymax 框子的右下角点纵坐标,单位px

JPEGImages 1.jpg D:\笔记\一些软件的基本操作\labelimg的基本使用\dataset\JPEGImages\1.jpg 

Unknown 640 424 3 0 person Unspecified 0 0 192 99 275 373 dog Unspecified 0 0 67 264 206 347 horse Unspecified 0 0 407 139 601 345

4.2  YOLO

在左侧可以选择YOLO

标注保存后会得到图像同名的txt文件和classes.txt

classes.txt无论标注多少张只会出现一次,内容为标签名称,如果下一张有新的标签会在classes.txt中再添加

与图像同名的txt文件(1.txt)内容如下

  • 第一列是标签的索引,在这个例子里 person是2 dog是1 horse是0 (与classes.txt中的顺序一致)
  • 后面四个依次是
    • 中心点x坐标 ÷ 图像宽度
    • 中心点y坐标 ÷ 图像高度
    • 矩形框宽度 ÷ 图像宽度
    • 矩形框高度 ÷ 图像高度

我们搞个例子看一下

  • 2对应person
  • 0.364844 = [(192+275)÷ 2] ÷ 640
  • 0.556604 = [(99+373)÷ 2] ÷ 424
  • 0.129688 = (275-192) ÷ 640
  • 0.646226 = (373-99) ÷424

4.3  CreateML

在左侧可以选择CreateML

保存标注后会获得图像同名的json文件

我们可以看到该张图像标注内容的标签和坐标

5  自动保存

把这个勾上就不会每到下一张询问你一次了

6  验证图像

每次标注后可以找一个人验证,验证成功之后可以点一下verify Image按钮,点完之后背景就变成绿色了,变成绿色表示这个图像是被验证过的

切到下一张由于这张照片没被验证,所以背景是灰色的

如果再切回去表示图像已经被验证了,所以背景是绿色的

被验证的图像会被加上verified这个属性

  • 别的类型我就不看了,大致应该都差不多

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐