Разметка изображений: самый полный гайд

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

В этой статье мы раскрываем все тонкости процесса, делимся проверенными методами и реальными кейсами от команды Data Light, чтобы помочь вам вывести проекты на новый уровень. Если вы хотите разобраться в разметке изображений и узнать, как избежать подводных камней, эта статья точно будет вам полезна.

88a9517fbe0f906dcf10d8817e59f7e1.webp

Что такое разметка изображений?

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

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

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

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

6649d6f256842defb3df5b403c2ba998.png

Зачем нужны размеченные данные?

Способ аннотирования изображений определяет, как модели будут работать после обучения. Плохая аннотация часто отражается в обучении и приводит к неточным прогнозам модели. Аннотированные данные особенно необходимы, если мы решаем уникальную проблему и используем ИИ в новой области. Для общих задач, таких как классификация изображений и сегментация, часто доступны предварительно обученные модели, которые можно адаптировать к конкретным случаям с помощью метода Transfer Learning, используя минимальные данные.

Обучение модели с нуля обычно требует большого количества аннотированных данных, разделённых на обучающий, валидационный и тестовый наборы, что трудно и времязатратно создать.

Как разметка изображений помогает бизнесу?

За последние годы к команде Data Light обращались компании из совершенно разных индустрий: сельское хозяйство, тяжелая промышленность, СМИ и индустрия развлечений. Вот всего несколько случаев применения разметки изображений из нашего опыта:

Разметка в сельском хозяйстве

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

Ниже мы привели кейсы, демонстрирующие, как наши клиенты смогли автоматизировать важные процессы и повысить производительность:

Разметка клубники

Производитель клубники обратился к нам с задачей автоматизировать процесс сбора ягод. На ферме стояли камеры, которые снимали ягоды крупным планом. Заказчик предоставил нам 5000 фотографий клубники, которые требовалось классифицировать по степени зрелости.

Мы разметили фотографии, разделив ягоды на спелые, незрелые и частично спелые. Эта работа заняла у нас месяц. В результате заказчик смог эффективно планировать сбор урожая, отправляя работников на те грядки, где ягоды в основном были спелыми.

Разметка сорняков

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

Для 500 изображений была выполнена семантическая сегментация и key point detection, а на 100 снимках — разметка рядов. Мы получили 4К снимки с разным углом съемки и освещенностью, многие содержали посторонние объекты. Для ускорения работы CVAT, растения размечались по одному ряду с последующим скрытием разметки.

Точность нейросети составила 95%, система стала работать лучше даже на сложных примерах. 

Разметка изображений для ритейла 

Может ли разметка изображений использоваться в ритейле? Конечно! Мы хотим поделиться лишь несколькими историями успеха наших клиентов:

Детекция товаров на полках

К Data Light обратился известный ритейлер с задачей создания системы детекции товаров на полках для определения их наличия и расположения по видеокамерам в магазинах. Такая система упрощает инвентаризацию, уменьшает ошибки и оптимизирует управление запасами, предоставляя точные данные о продукции и скорости продаж. Мы получили 34 тысячи изображений полок, на которых разметили товары и их расположение. Важно была не только наличие товаров, но и их корректное расположение.

Результат показал, что система точно и быстро определяет наличие и расположение товаров на полках, что помогло оптимизировать управление запасами и улучшить обслуживание клиентов. Заказчик выбрал Data Light за опыт в детекции объектов и анализе изображений, и был удовлетворен качеством полученных данных.

Детекция штрих-кодов

Кроме того, команда Data Light несколько раз работала над проектами по детекции чеков и штрих-кодов. В одном из таких проектов к нам обратилась сеть супермаркетов с задачей автоматической обработки чеков в своем приложении. Мы разметили изображения чеков Bounding Box (подробнее про этот инструмент расскажем чуть позже) и добавили текст, который на них находился. Эти данные позволили заказчику эффективно обучить нейронную сеть для автоматической обработки чеков.

Также для этого же приложения необходима была возможность считывания штрих-кодов. Мы получили различные фотографии товаров со штрих-кодами и разметили номера и границы штрих-кодов, что позволило заказчику обеспечить корректное считывание штрих-кодов прямо в приложении.

Как работает разметка изображений?

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

Особое внимание нужно уделить:

  • Модальности данных

  • Типу необходимой аннотации

  • Формату, в котором будут храниться аннотации

Для аннотирования часто используются различные инструменты. Самые известные среди них — CVAT, Lebelme, LabelImg, Annotateme. Каждый из них имеет свою специфику, о ней подробнее мы рассказали в этой статье.

Задачи, требующие аннотированных данных

Теперь давайте рассмотрим задачи компьютерного зрения, которые требуют размеченных данных.

1643dc7c141c31210879233350fce837.png

  • Классификация изображенийКлассификация изображений предполагает назначение метки или тега изображению. Разметки для этой задачи обычно представляют собой текстовые метки, номера классов или однобитные кодировки.

    a599f09861d5659e04bf34cb21e7fdc4.png
  • Обнаружение и распознавание объектовОбнаружение объектов — это задача обнаружения объектов на изображении. Аннотации для этой задачи включают ограничивающие рамки и названия классов.

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

    014d11a1129cf5c08b5145e54f7bec69.webp
  • Семантическая сегментацияСемантическая сегментация делит изображение на пиксельные регионы на основе категорий.

  • Сегментация объектовСегментация объектов разделяет и сегментирует экземпляры объектов на изображении.

  • Паноптическая сегментацияПаноптическая сегментация объединяет как семантическую, так и сегментацию объектов. Она обеспечивает сегментацию как категорий, так и отдельных объектов.

Типы форм аннотирования изображений

Различные задачи требуют различных форм аннотирования данных. Вот как они используются:

1872a251a696c0c5bbdc7c4244c6f2be.webp

Bounding box (Ограничивающая рамка)Bounding box — это прямоугольные метки, которые рисуются вокруг объектов на изображении, чтобы указать их местоположение и границы.

Этот тип разметки имеет решающее значение для моделей обнаружения объектов, позволяя им распознавать и определять объекты в различных контекстах.

7c4281e42cb100b741d232d84a1dd48a.png

Polygon (Полигон)

Полигональная разметка или разметка полигонами — это техника, используемая в маркировке данных, при которой аннотаторы рисуют многосторонние фигуры вокруг объектов интереса на изображениях или видеокадрах с помощью полигонального инструмента.

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

3D cuboid (Кубоид 3D)Разметка 3D-кубоидов помогает аннотировать 2D-изображения, снятые камерой, используя кубоиды для создания эталонных наборов данных для обучения алгоритмов машинного обучения и моделей восприятия компьютерного зрения.

f8e42e7edeeaab8dbab87b6b6151c3c9.webp

Semantic segmentation (Семантическая сегментация)Разметка семантической сегментации — это процесс маркировки изображений на уровне пикселей, который стал важным для развития технологий компьютерного зрения и ИИ.

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

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

50988da63d7e61cad1ff865715ae4f44.webp

Keypoint Annotation (Разметка ключевых точек)

Аннотация ключевых точек — это специализированный тип маркировки данных, который идентифицирует и отмечает важные особенности на изображениях или в видео.

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

Как размечать изображения? 5 простых шагов

Для начала работы с разметкой изображений нам нужно пройти несколько шагов:

  1. Подготовка исходных изображений или видео данныхПервый шаг требует подготовки сырых данных в виде изображений или видео. Данные обычно очищаются и обрабатываются, где удаляется низкокачественный и дублированный контент перед отправкой на аннотирование. Вы можете собрать и обработать свои данные или использовать публично доступные наборы данных.

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

  3. Создайте класс для каждого объекта, который хотите аннотироватьБольшинство алгоритмов глубокого обучения требуют фиксированного количества классов. Настройка меток и их названий на ранних этапах помогает предотвратить дублирование классов или метки похожих объектов под разными именами.

  4. Аннотируйте с помощью правильных инструментовПосле определения меток классов можно приступать к аннотированию данных. Область объекта можно аннотировать или добавлять метки изображения в зависимости от задачи. Важно, чтобы сложные аннотации, такие как ограничивающие рамки, сегментные карты и полигоны, были максимально точными.

  5. Версионируйте и экспортируйте набор данныхДанные могут экспортироваться в различных форматах в зависимости от их использования. Популярные методы экспорта включают JSON, XML и pickle. Для обучения алгоритмов глубокого обучения используются форматы, такие как COCO и Pascal VOC.

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

Готовы внедрить аннотирование изображений в ваш бизнес? Свяжитесь с нами сегодня, чтобы узнать, как наши услуги могут помочь вам в достижении целей!

© Habrahabr.ru