专栏首页python前行者[701]labelImg标注工具

[701]labelImg标注工具

labelImg github:https://github.com/tzutalin/labelImg exe下载:https://tzutalin.github.io/labelImg/

用于深度网络训练的数据集做标注的方法和工具有好多,像Labelme、labelImg、yolo_mark、Vatic、Sloth等等,此处暂时只介绍其中的一种标注工具:labelImg。

常见的图片标注工具

LabelImg

这款工具是全图形界面,用Python和Qt写的,最牛的是其标注信息可以直接转化成为XML文件,与PASCAL VOC以及ImageNet用的XML是一样的。

trainingImageLabeler

MATLAB R2017a版本自带的trainingImageLabeler工具:Ground-Truth Labeling可以标记感兴趣的区域,如车道,汽车和交通标志,以及整个视频帧或时间间隔与相关信息,如天气条件。

labelImg的安装

pip安装

$ pip install labelImg
$ labelImg
$ labelImg [IMAGE_PATH] [PRE-DEFINED CLASS FILE]

Ubuntu源码安装

由于Ubuntu系统自带python,这款软件在Ubuntu环境下的安装是最方便的。软件要求python版本在2.6以上,同时需要PyQt和lxml的支持。

Python2+Qt4

sudo apt-get install pyqt4-dev-tools
sudo pip install lxml
make qt4py2
python labelImg.py
python labelImg.py [IMAGE_PATH] [PRE-DEFINED CLASS FILE]

Python3+Qt5

sudo apt-get install pyqt5-dev-tools
sudo pip3 install lxml
make qt5py3
python3 labelImg.py
python3 labelImg.py [IMAGE_PATH] [PRE-DEFINED CLASS FILE]

下载源码并运行

在原作者的github下载源码压缩包,解压可得到名为labelImg-master的文件夹,进入该文件夹,在空白处使用“Shift+鼠标右键”,进入当前目录的命令行窗口,依次输入下面语句即可打开软件。

pyrcc4 -o resources.py resources.qrc
python labelImg.py
python labelImg.py [IMAGE_PATH] [PRE-DEFINED CLASS FILE]

labelImg的使用方法

windos版本请不要把存放在中文目录下,否则打不开。

图像数据标注一般操作的顺序:“open file ” -----"create rectbox " -----"输入类别名称 "-----“change save dir ”-----“Save” 最后在保存文件的路径下生成.xml文件,.xml文件的名字是和标注照片的名字一样,如果要修改已经标注过的图像,.xml中的信息也会随之改变。得到的.xml 和PASCAL VOC所用格式一样!

  • 修改默认的XML文件保存位置,使用快捷键“Ctrl+R”,改为自定义位置,这里的路径一定不能包含中文,否则无法保存。
  • 源码文件夹中使用notepad++打开data/predefined_classes.txt,修改默认类别,比如改成person、car、motorcycle三个类别。
  • “Open Dir”打开图片文件夹,选择第一张图片开始进行标注,使用“Create RectBox”或者“Ctrl+N”开始画框,单击结束画框,再双击选择类别。完成一张图片后点击“Save”保存,此时XML文件已经保存到本地了。点击“Next Image”转到下一张图片。
  • 标注过程中可随时返回进行修改,后保存的文件会覆盖之前的。
  • 完成标注后打开XML文件,发现确实和PASCAL VOC所用格式一样。

热键

热键

说明

ctrl + A

显示所有的框

ctrl + H

隐藏所有的框

ctrl + d

复制当前标签和矩形框

ctrl + E

编辑标签

ctrl + F

fitwindow

ctrl + J

move and edit Boxes

ctrl + L

boxlineColor

ctrl + o

openfile

ctrl +Q

退出软件

ctrl + r

更改默认注释目标目录(xml文件保存的地址)

ctrl + s

保存

ctrl + u

加载目录中的所有图像,鼠标点击Open dir同功能

ctrl + shift + F

fitWidth

ctrl + shift + o

打开的文件夹只显示.xml文件

ctrl + shift + s

ctrl + +

放大

ctrl - -

缩小

ctrl + =

原始大小

a

上一张图片

d

下一张图片

w

创建一个矩形框

del

删除选定的矩形框

space

将当前图像标记为已验证

↑→↓←

键盘箭头移动选定的矩形框

其他同类标注工具(Github):

Yolo_mark BBox-Label-Tool ImageLabel

参考:https://blog.csdn.net/qq_41185868/article/details/79945012 https://blog.csdn.net/j879159541/article/details/90401297 https://blog.csdn.net/Jesse_Mx/article/details/53606897 https://www.cnblogs.com/kekeoutlook/p/8063077.html https://blog.csdn.net/xunan003/article/details/78720189

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • [735]利用UItraISO软碟通制作U盘启动盘安装Ubuntu16.04系统

    第2,3可以不勾选:第2选项是默认.ISO文件都用软碟通打开,不经常使用软碟通没必要关联;第3选项会生产一个驱动器(空盘),类似于百度云盘的,不经常使用软碟通不...

    周小董
  • urllib.request.urlretrieve()函数

    将URL表示的网络对象复制到本地文件。如果URL指向本地文件,则对象将不会被复制,除非提供文件名。返回一个元组()(filename,header),其中fil...

    周小董
  • [774]python爬虫:正文提取第三方库goose

    Goose 是一个 文章内容提取器 ,可以从任意资讯文章类的网页中提取 文章主体 ,并提取 标题、标签、摘要、图片、视频 等信息,且 支持中文 网页。它最初是由...

    周小董
  • python操作sqlserver

    # coding=gbk import sys   import pymssql #尝试数据库连接 try:     conn = pymssql.co...

    py3study
  • Android开发之ViewPager简单使用

    什么是ViewPager? ViewPager(android.support.v4.view.ViewPager)是android扩展包v4包中的类,这个类可...

    YungFan
  • 死磕 java集合之ConcurrentHashMap源码分析(一)

    ConcurrentHashMap是HashMap的线程安全版本,内部也是使用(数组 + 链表 + 红黑树)的结构来存储元素。

    彤哥
  • 碎片的简单用法

    Dream城堡
  • A021-列表容器之GridView

    GridView是Android的另一个列表容器,用法也跟ListView类似,它的布局是一个网格,一行可以有多个项,并且整个视图可以滚动,我们常见的应用有手机...

    用户1130025
  • A013-animator资源

    用户1130025
  • Android 中 View 的滑动

    Android View控件的滑动是 Android 的一个重要内容。在 View 需要变换位置时,为其添加适当的滑动效果,获得更好的用户体验,下面来看一下怎样...

    指点

扫码关注云+社区

领取腾讯云代金券