Руководство для начинающих | Установка | Использование | Примеры
Labelme — это инструмент для графических аннотаций изображений, вдохновленный http://labelme.csail.mit.edu.
Он написан на Python и использует Qt в качестве графического интерфейса.
Пример сегментации набора данных VOC.
Другие примеры (семантическая сегментация, обнаружение bbox и классификация).
Различные примитивы (многоугольник, прямоугольник, круг, линия и точка).
Аннотация изображения для многоугольника, прямоугольника, круга, линии и точки. (учебник)
Аннотация изображения-флажка для классификации и очистки. (#166)
Видео аннотация. (видеоаннотация)
Настройка графического интерфейса (предустановленные метки/флаги, автосохранение, проверка меток и т. д.). (#144)
Экспорт набора данных в формате VOC для семантической/экземплярной сегментации. (семантическая сегментация, сегментация экземпляров)
Экспорт набора данных в формате COCO для сегментации экземпляра. (сегментация экземпляра)
Если вы новичок в Labelme, вы можете начать работу с Labelme Starter, который содержит:
Руководства по установке для всех платформ: Windows, macOS и Linux?
Пошаговые руководства : первая аннотация по редактированию, экспорту и интеграции с другими программами?
Сборник ценных ресурсов для дальнейшего изучения?.
Есть варианты:
Независимая от платформы установка: Anaconda
Установка для конкретной платформы: Ubuntu, macOS, Windows.
Предварительная сборка двоичных файлов из раздела релизов.
Вам нужно установить Anaconda, а затем выполнить команду ниже:
# python3conda create --name=labelme python=3source active labelme# conda install -c conda-forge pyside2# conda install pyqt# pip install pyqt5 # pyqt5 можно установить через pip на python3pip install labelme# или вы можете установить все с помощью команды conda # conda install labelme -c conda-forge
sudo apt-get install labelme# или sudo pip3 install labelme# или установить автономный исполняемый файл из:# https://github.com/labelmeai/labelme/releases# или установить из sourcepip3 install git+https://github.com/labelmeai/ ярлык меня
Brew install pyqt # возможно, pyqt5pip install labelme# или установить автономный исполняемый файл/приложение из: # https://github.com/labelmeai/labelme/releases# или установить из sourcepip3 install git+https://github.com/labelmeai/labelme
Установите Anaconda, затем в командной строке Anaconda запустите:
conda create --name=labelme python=3 Конда активирует метку pip install labelme# или установить автономный исполняемый файл/приложение из:# https://github.com/labelmeai/labelme/releases# или установить из исходного кодаpip3 install git+https://github.com/labelmeai/labelme
Запустите labelme --help
для получения подробной информации.
Аннотации сохраняются в виде файла JSON.
labelme # просто откройте руководство по графическому интерфейсу # (пример с одним изображением) компакт-диск с примерами/учебником labelme apc2016_obj3.jpg # указать файл изображения labelme apc2016_obj3.jpg -O apc2016_obj3.json # закрыть окно после сохранения labelme apc2016_obj3.jpg --nodata # не включать данные изображения, но относительный путь к изображению в JSON filelabelme apc2016_obj3.jpg --labels highland_6539_self_stick_notes,mead_index_cards,kong_air_dog_squeakair_tennis_ball # указать список меток# пример семантической сегментацииcd example/semantic_segmentation labelme data_annotated/ # Открыть каталог для аннотирования всех изображений в нем. labelme data_annotated/ --labels labels.txt # указать список меток с помощью файла
--output
указывает место, куда будут записываться аннотации. Если местоположение заканчивается на .json, в этот файл будет записана одна аннотация. Аннотировать можно только одно изображение, если местоположение указано в формате .json. Если местоположение не заканчивается на .json, программа предположит, что это каталог. Аннотации будут храниться в этом каталоге под именем, соответствующим изображению, к которому была сделана аннотация.
При первом запуске labelme он создаст файл конфигурации в ~/.labelmerc
. Вы можете редактировать этот файл, и изменения будут применены при следующем запуске labelme. Если вы предпочитаете использовать файл конфигурации из другого места, вы можете указать этот файл с помощью флага --config
.
Без флага --nosortlabels
программа будет перечислять метки в алфавитном порядке. Когда программа запускается с этим флагом, она отображает метки в том порядке, в котором они указаны.
Флаги назначаются всему изображению. Пример
Метки присваиваются одному многоугольнику. Пример
Как преобразовать файл JSON в массив numpy? См. примеры/учебник.
Как загрузить PNG-файл этикетки? См. примеры/учебник.
Как получить аннотации для семантической сегментации? См. примеры/semantic_segmentation.
Как получить аннотации для сегментации экземпляра? См. примеры/instance_segmentation.
Классификация изображений
Обнаружение ограничивающей рамки
Семантическая сегментация
Сегментация экземпляров
Видео аннотация
git clone https://github.com/labelmeai/labelme.gitcd labelme# Установите anaconda3 и labelmecurl -L https://github.com/wkentaro/dotfiles/raw/main/local/bin/install_anaconda3.sh | bash -s .source .anaconda3/bin/activate пип установить -e .
Ниже показано, как создать автономный исполняемый файл в macOS, Linux и Windows.
# Настройка condaconda create --name labelme python=3.9 conda active labelme# Создайте автономный исполняемый файлpip install .pip install 'matplotlib<3.3'pip install pyinstaller pyinstaller labelme.spec dist/labelme --версия
Убедитесь, что приведенный ниже тест прошел в вашей среде.
Дополнительную информацию см. в .github/workflows/ci.yml
.
pip install -r требования-dev.txt ruff format --check # `ruff format` для автоматической проверкиruff # `ruff check --fix` для автоматического исправленияMPLBACKEND='agg' pytest -vsxtests/
Этот репозиторий является ответвлением mpitid/pylabelme.