LabelImg — инструмент графического аннотирования изображений.
Он написан на Python и использует Qt для своего графического интерфейса.
Аннотации сохраняются в виде файлов XML в формате PASCAL VOC, которые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 с новым значком SVG в папке /Applications. Вы можете использовать следующий скрипт: build-tools/build-for-macos.sh
Окна
УстановитьPython,PyQt5 иустановить lxml.
Откройте 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(Питон 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]
Получено из PyPI, но только с python3.0 или выше
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
Вы можете получить образ со всеми установленными и необходимыми зависимостями.Посмотреть демонстрационное видео
использование
Шаг (ПаскальVOC)
- Соберите и запустите, следуя приведенным выше инструкциям.
- Нажмите «Изменить папку сохраненных заметок по умолчанию» в «Меню/Файл».
- Нажмите «Открыть каталог».
- Нажмите «Создать RectBox».
- Нажмите и отпустите левую кнопку мыши, чтобы выбрать область для комментирования прямоугольника.
- Вы можете использовать правую кнопку мыши, чтобы перетащить прямоугольник, чтобы скопировать или переместить
Заметки будут сохранены в указанную вами папку.
Вы можете использовать следующие горячие клавиши для ускорения рабочего процесса.
Шаг (ЙОЛО)
- существует
data/predefined_classes.txt
Определяет список классов, которые будут использоваться для обучения. - Соберите и запустите, следуя приведенным выше инструкциям.
- Под кнопкой «Сохранить» в правом нижнем углу панели инструментов нажмите кнопку «PascalVOC», чтобы переключиться на формат YOLO.
- Вы можете обрабатывать одно или несколько изображений с помощью Open/OpenDIR. Когда закончите с одним изображением, нажмите Сохранить.
Текстовый файл в формате YOLO будет сохранен в той же папке, что и изображение с тем же именем. В эту папку также сохраняется файл с именем «classes.txt». «classes.txt» определяет список имен классов, на которые ссылаются теги YOLO.
Уведомление:
- Ваш список тегов не должен изменяться во время обработки списка изображений. Когда изображение сохраняется, class.txt также обновляется, а предыдущие аннотации — нет.
- Функцию «класс по умолчанию» не следует использовать при сохранении в формате YOLO, на нее не будут ссылаться.
- При сохранении в формат YOLO флаг «сложно» сбрасывается.
Создание предопределенных классов
вы можете редактироватьdata / predefined_classes.txtдля загрузки предопределенных классов
горячая клавиша
Ctrl + u | Загрузить все изображения из каталога |
---|---|
Ctrl + r | Изменить целевой каталог аннотаций по умолчанию |
Ctrl + s | спасти |
Ctrl + d | Дублировать текущую метку и прямоугольник |
космос | Отметить текущее изображение как проверенное |
w ^ | Создайте прямоугольную коробку |
d | следующее изображение |
Один | предыдущее изображение |
Дел | Удалить выделенный прямоугольник |
Ctrl + | увеличить |
Ctrl-- | уменьшить |
↑→↓ ← | Стрелки клавиатуры перемещают выбранный прямоугольник |
Проверить изображение:
При нажатии пробела пользователь может пометить изображение как проверенное, при этом будет отображаться зеленый фон. Это используется, когда набор данных создается автоматически, тогда пользователь может просмотреть все изображения и пометить их, а не аннотировать их.
трудный:
Поле сложности, установленное на 1, указывает, что объект был помечен как «сложный», т. е. объекты, которые хорошо видны, но их трудно идентифицировать без полного использования контекста. В зависимости от реализации вашей глубокой нейронной сети вы можете включать или исключать сложные объекты во время обучения.
Как внести свой вклад
Отправить запрос на включение
лицензия
Бесплатное программное обеспечение: лицензия MIT
Цитата: Цуталин. ЯрлыкImg. Git-код (2015).GitHub.com/Тайзу Таллинн/Ла…