Программа для разметки фото: как выбрать инструмент для аннотирования изображений

Разметка фотографий для обучения нейросети упирается в выбор формата аннотаций ещё до установки программы: bounding box для детекции объектов, полигоны для сегментации, ключевые точки для поз — и не каждый инструмент поддерживает все три типа. Ошибка на этом этапе приводит к тому, что датасет приходится переделывать, а часы ручной разметки теряются.

Под «разметкой фото» понимают две разные задачи. Первая — аннотирование изображений для машинного обучения: выделение объектов рамками и масками с присвоением классов. Вторая — добавление на снимки подписей, стрелок, водяных знаков и геометок. В этой статье разберём оба сценария, но основной акцент сделаем на инструментах для подготовки датасетов, поскольку именно там выбор программы критичнее всего.

Какие задачи решает разметка изображений

Прежде чем скачивать первую попавшуюся утилиту, определите тип аннотации. От него зависит и программа, и формат экспорта, и трудозатраты.

  • 🏷️ Классификация — присвоение метки всему изображению целиком («кот», «брак», «норма»).
  • 📦 Детекция объектов — прямоугольные рамки (bounding boxes) вокруг каждого объекта с указанием класса.
  • ✂️ Сегментация — точный контур объекта полигоном или маской; самый трудоёмкий вид разметки.
  • 📍 Ключевые точки — разметка характерных точек: суставы человека, углы детали, ориентиры лица.

Для бытовых задач — подписать схему, обвести деталь на фото, добавить стрелку — достаточно простого редактора. Здесь требования скромнее: важны удобство рисования поверх снимка и экспорт в обычные форматы JPG или PNG.

Обзор популярных программ для разметки

Рассмотрим инструменты, которые чаще всего используются для аннотирования. Набор функций у них различается, поэтому ориентируйтесь на свою задачу, а не на общую популярность.

CVAT — открытая платформа, изначально разработанная в Intel. Работает в браузере, поддерживает рамки, полигоны, полилинии, ключевые точки и видеоразметку. Есть функции автоматической разметки с подключением моделей. Подходит для командной работы: можно распределять задания между аннотаторами.

LabelImg — минималистичное десктопное приложение для детекции объектов. Только рамки, только классы, экспорт в форматы Pascal VOC (XML) и YOLO (TXT). Устанавливается через pip или запускается из готовой сборки. Хороший выбор, если нужно быстро разметить датасет под YOLO без лишних функций.

Roboflow — облачный сервис полного цикла: загрузка изображений, разметка, аугментация, экспорт в десятки форматов. Бесплатный тариф ограничен, но для небольшого проекта его обычно хватает. Учтите, что данные хранятся на сторонних серверах — для конфиденциальных снимков это может быть неприемлемо.

📊 Для какой задачи вам нужна разметка фото?
Обучение нейросети (детекция/сегментация)
Подписи и стрелки на снимках
Сортировка и каталогизация фото
Ещё только выбираю задачу

Сравнение инструментов

Чтобы упростить выбор, сведём ключевые характеристики в таблицу. Данные ориентировочные: возможности программ меняются от версии к версии, поэтому перед началом большого проекта сверяйтесь с официальной документацией конкретного инструмента.

ПрограммаТипТипы разметкиФорматы экспорта
CVATВеб / self-hostedРамки, полигоны, точки, видеоCOCO, YOLO, Pascal VOC и др.
LabelImgДесктопТолько рамкиPascal VOC, YOLO
RoboflowОблакоРамки, полигоны, классификацияМножество форматов
Label StudioВеб / self-hostedИзображения, текст, аудиоJSON, COCO и др.
VIA (VGG)Браузер, офлайнРамки, полигоны, точкиJSON, CSV
⚠️ Внимание: формат аннотаций несовместим между библиотеками напрямую. Если планируете обучать модель на YOLO, а разметили в формате COCO, потребуется конвертация. Лучше заранее выяснить, какой формат принимает ваш фреймворк, и настроить экспорт сразу.

Как организовать процесс разметки

Технология проста, но порядок действий влияет на качество датасета. Ниже — универсальная последовательность, не зависящая от конкретной программы.

☑️ Подготовка к разметке фото

Выполнено: 0 / 5

Начните с словаря классов: выпишите все категории объектов и правила спорных случаев. Например, считать ли частично перекрытый объект отдельной меткой. Без таких правил разные аннотаторы разметят одинаковые сцены по-разному, и модель обучится хуже.

Далее разметьте небольшую тестовую партию — несколько десятков изображений — и выполните экспорт. Откройте полученные файлы и убедитесь, что координаты, имена классов и структура папок соответствуют ожиданиям вашего пайплайна обучения. Найти несоответствие на этом этапе в разы дешевле, чем после разметки тысяч снимков.

Автоматическая и полуавтоматическая разметка

Ручная разметка — главный расход времени в подготовке датасета. Поэтому современные инструменты предлагают автоаннотацию: предобученная модель предлагает разметку, а человек лишь исправляет ошибки. В CVAT такая возможность встроена, облачные сервисы тоже предоставляют подобные функции.

Практичный подход — итеративный цикл. Разметьте вручную начальную партию, обучите на ней черновую модель, прогоните её по остальным изображениям и загрузите предсказания обратно в инструмент как черновик. Корректировка готовых рамок занимает заметно меньше времени, чем рисование с нуля.

⚠️ Внимание: авторазметку нельзя принимать без проверки. Модель систематически ошибается на редких ракурсах и мелких объектах, и эти ошибки перейдут в датасет. Каждое изображение после автоматической разметки должен просмотреть человек.
Что такое форматы COCO, YOLO и Pascal VOC

Это соглашения о том, как хранить аннотации. YOLO — текстовый файл на каждое изображение с классом и нормированными координатами рамки. Pascal VOC — XML-файлы с координатами в пикселях. COCO — единый JSON на весь датасет, поддерживает сегментацию и ключевые точки. Выбор формата диктуется фреймворком, на котором будет обучаться модель.

Разметка фото для бытовых задач

Если вам нужно не обучение нейросети, а подписи, стрелки и выделения на снимках, подойдут более простые средства. В Windows базовую разметку умеет встроенный редактор «Фотографии» и классический Paint: обводка, стрелки, текст. На смартфонах аналогичные функции есть в штатных галереях — обычно через пункт «Изменить» или «Разметка».

Для регулярной работы со скриншотами удобны специализированные утилиты захвата экрана: они позволяют сразу после снимка добавить стрелки, рамки, размытие конфиденциальных областей и нумерацию шагов. Конкретный набор функций различается между программами, поэтому проверяйте наличие нужных инструментов в описании выбранной утилиты.

Типичные ошибки при разметке

Даже с хорошим инструментом качество датасета легко испортить. Вот что чаще всего идёт не так.

  • 🔁 Непоследовательность — один и тот же объект размечается то как отдельный класс, то как часть другого.
  • 📐 Неточные рамки — bounding box должен плотно охватывать объект, без лишнего фона и обрезанных частей.
  • 🗂️ Дисбаланс классов — когда одного класса в сотни раз больше другого, модель игнорирует редкие категории.
  • 💾 Отсутствие резервных копий — аннотации, хранящиеся в одном экземпляре, легко потерять.

Регулярно выборочно проверяйте готовую разметку — особенно если над датасетом работает несколько человек. Достаточно просматривать каждую десятую-двадцатую работу, чтобы вовремя заметить системные расхождения.

Частые вопросы

Какая программа для разметки фото подходит новичку?

Для детекции объектов проще всего начать с LabelImg — минимум настроек и сразу понятный результат. Если нужны полигоны и командная работа, осваивайте CVAT: порог входа выше, но возможности шире.

Можно ли размечать фото бесплатно?

Да. CVAT, LabelImg, Label Studio и VIA распространяются бесплатно, у облачных сервисов вроде Roboflow есть бесплатные тарифы с ограничениями на объём данных.

Сколько фото нужно разметить для обучения модели?

Точной универсальной цифры нет: объём зависит от сложности задачи, числа классов и качества изображений. Практичный подход — начать с умеренной партии, обучить модель и по её ошибкам понять, каких данных не хватает.

Чем разметка отличается от аугментации?

Разметка — это ручное или автоматическое выделение объектов на изображениях. Аугментация — автоматические преобразования уже размеченных снимков (повороты, изменение яркости, кадрирование) для увеличения разнообразия датасета.

Подойдёт ли обычный графический редактор для разметки датасета?

Нет. Редакторы вроде Photoshop рисуют поверх картинки, но не сохраняют координаты объектов в машиночитаемом виде. Для обучения моделей нужны именно аннотационные инструменты с экспортом в COCO, YOLO или аналогичный формат.