LabelImg
LabelImg 一个图片标注工具.
用Python写成,Qt是图形界面的接口。
标准信息可保存到一个类似于Pascal voc格式你一样的,ImageNet使用的一个XML文件里。
安装
下载预编译二进制库
Windows & Linux
macOS. 没有macOS的二进制文件,我们会尽快补充,在此之前,你可以用源码编译.
从源码编译
Linux/Ubuntu/Mac系统上 最低版本 Python 2.6 ,qt的最低版本 PyQt 4.8.
Ubuntu Linux系统
Python 2 + 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]
Python 3 + 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]
macOS系统
Python 2 + Qt4的安装命令如下
brew install qt qt4
brew install libxml2
make qt4py2
python labelImg.py
python labelImg.py [IMAGE_PATH] [PRE-DEFINED CLASS FILE]
Python 3 + Qt5 的安装命令(只适用于 macOS High Sierra)
brew install qt # will install qt-5.x.x
brew install libxml2
make qt5py3
python labelImg.py
python labelImg.py [IMAGE_PATH] [PRE-DEFINED CLASS FILE]
新版本Python 3 Virtualenv + Binary 可以避免很多 QT / Python 版本问题,并且给你一个很好的.app文件,还有一个新的 SVG 图标
Windows系统
下载并安装Python 2.6 or later, PyQt4 ,然后安装 install lxml.
打开 cmd and cd 到 labelImg 文件夹
pyrcc4 -o resources.py resources.qrc
python labelImg.py
python labelImg.py [IMAGE_PATH] [PRE-DEFINED CLASS FILE]
Windows系统 + anaconda
下载并安装 anaconda (python 3+)
打开cmd and cd 到 labelImg 文件夹
conda install pyqt=4
pyrcc4 -py3 -o resources.py resources.qrc
python labelImg.py
python labelImg.py [IMAGE_PATH] [PRE-DEFINED CLASS FILE]
从 PyPI获取
pip install labelImg
labelImg
labelImg [IMAGE_PATH] [PRE-DEFINED CLASS FILE]
在 Ubuntu 14.04 and 16.04上,我测试了这个PIP命令,但是我么没有在 macOS and Windows上测试
用Docker
docker run -it \
--user $(id -u) \
-e DISPLAY=unix$DISPLAY \
--workdir=$(pwd) \
--volume="/home/$USER:/home/$USER" \
--volume="/etc/group:/etc/group:ro" \
--volume="/etc/passwd:/etc/passwd:ro" \
--volume="/etc/shadow:/etc/shadow:ro" \
--volume="/etc/sudoers.d:/etc/sudoers.d:ro" \
-v /tmp/.X11-unix:/tmp/.X11-unix \
tzutalin/py2qt4
make qt4py2;./labelImg.py
你可以把所有需要安装的和依赖放到一个图中. 这里有视频
用法
步骤 (PascalVOC)
编译并加载以上需要的依赖.
点击'Change default saved annotation folder' in Menu/File
点击 'Open Dir'
点击 'Create RectBox'
Click 点击然后释放鼠标左键,就标注了一个矩形
需要时,你可以用右键拖动或者复制这个矩形
标注会被保存到你指定的文件夹里.
你可以用以下快捷键来加速工作流.
步骤 (YOLO)
在 data/predefined_classes.txt 定义你要训练的类别.
编译安装并加载以上软件.
工具条上 "Save" 按钮的右下方, 点击 "PascalVOC" 按钮 转换为 YOLO 格式.
你可以用 Open/OpenDIR 来打开单张或者多张图片. 当完成一张图片后,点击 save.
yolo 格式时,与图片同名的txt文件会保存在你图片所在文件夹内. 一个名为 "classes.txt" 的文件也会保存在此文件夹里. "classes.txt" 定义了你所指定的类别.
注意:
Your label list shall not change in th在处理同一批图片时,标注列不能变。因为当你标注一个图片时classes.txt会被更新,但是前面的标注不会被更新.
YOLO格式时,我不建议你使用"default class" 因为它不会被引用.
YOLO 格式时, "difficult" 标志是无效的.
建立预定义的类
编辑 data/predefined_classes.txt 就能加载预定义的类
快捷键
Ctrl + u 从一个文件夹里装载所有图片文件
Ctrl + r 改变默认标准存放文件夹
Ctrl + s 保存
Ctrl + d 复制当前标注和矩形框
Space 标志当前图片为验证的
w 建立一个矩形框
d 下个图片
a 上个图片
del 删除选中的矩形框
Ctrl++ 放大
Ctrl-- 缩小
↑→↓← 移动矩形框
如何参与本项目
发送 pull request
版权
自由软件: 麻省理工版权
引用: Tzutalin. LabelImg. Git code (2015). https://github.com/tzutalin/labelImg
关于
ImageNet Utils 下载图片,建议机器学习需要的标注文件等等
用Docker to 运行 labelImg
建立PASCAL VOC TFRecord 文件
基于 Nick Roach (GPL)添加图标