LabelImg是一个图形图像注释工具。
它是用Python编写的,并使用Qt作为其图形界面。
注释以PASCAL VOC格式保存为XML文件,这是ImageNet使用的格式。此外,它还支持YOLO格式
Linux / Ubuntu / Mac至少需要Python 2.6并且已经使用PyQt 4.8进行了测试。但是,强烈建议使用Python 3或更高版本以及PyQt5。
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 (Recommended)
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]
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 (Recommended)
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 (Recommended)
Virtualenv can avoid a lot of the QT / Python version issues
brew install python3
pip3 install pipenv
pipenv --three # or pipenv install pyqt5 lxml
pipenv run pip install pyqt5 lxml
pipenv run make qt5py3
python3 labelImg.py
[Optional] rm -rf build dist; python setup.py py2app -A;mv "dist/labelImg.app" /Applications
注意:Last命令为您提供了一个很好的.app文件,在/ Applications文件夹中有一个新的SVG图标。您可以考虑使用以下脚本:build-tools / build-for-macos.sh
视窗
打开cmd并转到labelImg目录
pyrcc4 -o line / resources.py resources.qrc
对于pyqt5,pyrcc5 -o libs / resources.py资源qrc
python labelImg.py
python labelImg.py [IMAGE_PATH] [PRE-DEFINED CLASS FILE]
Windows + Anaconda
下载并安装Anaconda(Python 3+)
打开Anaconda Prompt并转到labelImg目录
conda install pyqt = 5
pyrcc5 -o libs / resources.py resources.qrc
python labelImg.py
python labelImg.py [IMAGE_PATH] [PRE-DEFINED CLASS FILE]
pip3 install labelImg
labelImg
labelImg [IMAGE_PATH] [预先定义的课程文件]
码头运行-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文件将与具有相同名称的图像保存在同一文件夹中。名为“classes.txt”的文件也会保存到该文件夹中。“classes.txt”定义YOLO标签引用的类名列表。
注意:
您可以编辑 data / predefined_classes.txt 以加载预定义的类
Ctrl + u | 从目录加载所有图像 |
---|---|
Ctrl + r | 更改默认注释目标目录 |
Ctrl + s | 保存 |
Ctrl + d | 复制当前标签和矩形框 |
空间 | 将当前图像标记为已验证 |
w ^ | 创建一个矩形框 |
d | 下一张图片 |
一个 | 上一张图片 |
德尔 | 删除所选的矩形框 |
按Ctrl + | 放大 |
Ctrl-- | 缩小 |
↑→↓← | 键盘箭头移动选定的矩形框 |
验证图片:
按空格键时,用户可以将图像标记为已验证,将显示绿色背景。这在自动创建数据集时使用,然后用户可以浏览所有图片并标记它们而不是注释它们。
难:
难度字段设置为1表示该对象已被注释为“困难”,例如,在没有充分利用上下文的情况下清晰可见但难以识别的对象。根据您的深度神经网络实现,您可以在训练期间包含或排除困难对象。
发送拉取请求
引用:Tzutalin。LabelImg。Git代码(2015)。https://github.com/tzutalin/labelImg