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

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

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

Существует множество моделей, которые могут реализовать локализацию объекта.

  • Быстрый RCNN
  • RCNN
  • ЙОЛО
  • SSD

Я расскажу о YOLO, возможно, это лучшее решение.

ЙОЛО:

YOLO (You Only Look Once) — один из самых быстрых и точных алгоритмов. Изображение разделено на несколько сеток, затем мы изменяем метки наших данных, чтобы реализовать алгоритм локализации и классификации для каждой ячейки сетки.

Оригинал статьи можно посмотреть здесь

YOLO использует единую сеть CNN для классификации и локализации.

Алгоритм реализации YOLO:

  1. Разделите изображение на несколько сеток (лучше всего использовать 7 * 7).
  2. Пометьте обучающие данные. Если N — количество уникальных объектов в наших данных, G*G — количество сеток, на которые мы разбиваем наше изображение, тогда наш выходной вектор будет иметь длину G*G*(N+5).
  3. Разработайте одну глубокую сверточную нейронную сеть с функцией потерь L2 как ошибку между фактическими координатами и прогнозируемыми координатами.

Чтобы получить код для реализации YOLO, нажмите здесь. Это ссылка на репозиторий git авторов статьи YOLO.