Labelimg是Tzutalin在数十名贡献者的帮助下创建的流行图像注释工具,不再积极开发,并且已经成为Label Studio社区的一部分。查看标签Studio,这是图像,文本,超文本,音频,视频和时间序列数据的最灵活的开源数据标签工具。安装Label Studio并加入Slack社区以入门。
Labelimg是一种图形图像注释工具。
它用Python编写,并将QT用于图形接口。
注释以Pascal VOC格式保存为XML文件,这是ImageNet使用的格式。此外,它还支持Yolo和CreateMl格式。
观看演示视频
这是现代Linux发行版(例如Ubuntu和Fedora)上最简单的(单命令)安装方法。
pip3 install labelImg
labelImg
labelImg [IMAGE_PATH] [PRE-DEFINED CLASS FILE]
Linux/Ubuntu/Mac至少需要Python 2.6,并已使用PYQT 4.8进行了测试。但是,强烈建议使用python 3或更高,并且PYQT5。
Python 3 + QT5
sudo apt-get install pyqt5-dev-tools
sudo pip3 install -r requirements/requirements-linux-python3.txt
make qt5py3
python3 labelImg.py
python3 labelImg.py [IMAGE_PATH] [PRE-DEFINED CLASS FILE]
Python 3 + QT5
brew install qt # Install qt-5.x.x by Homebrew
brew install libxml2
or using pip
pip3 install pyqt5 lxml # Install qt and lxml by pip
make qt5py3
python3 labelImg.py
python3 labelImg.py [IMAGE_PATH] [PRE-DEFINED CLASS FILE]
Python 3 Virtualenv(推荐)
Virtualenv可以避免大量QT / Python版本问题
brew install python3
pip3 install pipenv
pipenv run pip install pyqt5==5.15.2 lxml
pipenv run make qt5py3
pipenv run python3 labelImg.py
[Optional] rm -rf build dist ; pipenv run python setup.py py2app -A ; mv " dist/labelImg.app " /Applications
注意:最后一个命令为您提供了一个不错的.app文件,并在您的 /应用程序文件夹中使用新的SVG图标。您可以考虑使用脚本:build-tools/build-for-macos.sh
安装Python,Pyqt5并安装LXML。
打开CMD并转到Labelimg目录
pyrcc4 -o libs/resources.py resources.qrc
For pyqt5, pyrcc5 -o libs/resources.py resources.qrc
python labelImg.py
python labelImg.py [IMAGE_PATH] [PRE-DEFINED CLASS FILE]
如果要将其包装到单独的EXE文件中
Install pyinstaller and execute:
pip install pyinstaller
pyinstaller --hidden-import=pyqt5 --hidden-import=lxml -F -n " labelImg " -c labelImg.py -p ./libs -p ./
下载并安装Anaconda(Python 3+)
打开Anaconda提示,然后转到Labelimg目录
conda install pyqt=5
conda install -c anaconda lxml
pyrcc5 -o libs/resources.py resources.qrc
python labelImg.py
python labelImg.py [IMAGE_PATH] [PRE-DEFINED CLASS FILE]
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
您可以提取具有所有已安装和所需依赖项的图像。观看演示视频
注释将保存到您指定的文件夹中。
您可以参考以下热键以加快工作流程。
data/predefined_classes.txt
中定义将用于培训的类列表。Yolo格式的TXT文件将保存在与您的图像相同名称的同一文件夹中。一个名为“ class.txt”的文件也保存到该文件夹中。 “ class.txt”定义了YOLO标签所指的类名称的列表。
笔记:
您可以编辑数据/predefined_classes.txt以加载预定义的类
(在查看中选择显示标签模式以显示/隐藏lablels)
Ctrl + U | 从目录加载所有图像 |
ctrl + r | 更改默认注释目标dir |
ctrl + s | 节省 |
Ctrl +D。 | 复制当前标签和RECT框 |
Ctrl + Shift + D | 删除当前图像 |
空间 | 标记已验证的当前图像 |
w | 创建一个Rect Box |
d | 下一个图像 |
一个 | 上图 |
del | 删除选定的RECT框 |
Ctrl ++ | 放大 |
ctrl-- | 放大 |
↑→↓← | 键盘箭头移动选定的RECT框 |
验证图像:
按下空间时,用户可以将图像标记为已验证的图像,将出现绿色背景。当自动创建数据集时,用户可以使用所有图片并标记它们而不是注释它们时使用的。
难的:
困难的字段设置为1表示对象已注释为“困难”,例如,一个对象清晰可见但在没有上下文的情况下很难识别。根据您深层的神经网络实施,您可以在培训期间包括或排除困难的物体。
如果加载课程存在问题,则可以:
发送拉请请求
免费软件:麻省理工学院许可证
引用:tzutalin。 Labelimg。 GIT代码(2015)。 https://github.com/tzutalin/labelimg