Задача нахождения объектов на изображении

Материал из Викиконспекты
Перейти к: навигация, поиск

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

Область применимости

Задача детекции объектов — одна из самых распространённых задач, связанных с компьютерным зрением (Computer Vision). Область применимости задачи является очень широкой — от распознавания животных, людей, предметов до военных целей, метеорологии, систем безопасности. В настоящее время основные алгоритмы детекции объектов основаны на глубоких нейронных сетях.

R-CNN

Схема работы R-CNN

Region-CNN (R-CNN, Region-based Convolutional Network) — алгоритм, основанный на свёрточных нейронных сетях. Вместо того, чтобы использовать для поиска изображений скользящие окна фиксированного размера, на первом шаге алгоритм пытается найти селективным поиском "регионы" — bounding box-ы разных размеров, которые, предположительно, содержат объект. Это обеспечивает более быстрое и эффективное нахождение объектов независимо от размера объекта, расстояния до камеры, угла зрения. Суммарное количество регионов для каждого изображения, сгенерированных на первом шаге, примерно равно двум тысячам. Найденные регионы при помощи аффинных преобразований приобретают размер, который нужно подать на вход CNN. Также вместо аффинных преобразований можно использовать паддинги, либо расширять bounding-box до размеров, необходимых для входа CNN. В качестве CNN зачастую используется архитектура CaffeNet, извлекающая для каждого региона порядка 4096 признаков. На последнем этапе вектора признаков регионов обрабатываются SVM, проводящими классификацию объектов, по одной SVM на каждый домен.

Селективный поиск, в свою очередь, тоже можно обучать с помощью линейной регрессии параметров региона — ширины, высоты, центра. Этот метод, названный bounding-box regression, позволяет более точно выделить объект. В качестве данных для регрессии используются признаки, полученные в результате работы CNN.

Fast R-CNN

Схема работы Fast R-CNN

За счёт того, что в R-CNN для каждого из 2000 регионов классификация производится отдельно, обучение сети занимает большой объём времени. Оригинальной версии алгоритма R-CNN для обработки каждого тестового изображения требовалось порядка 47 секунд, поэтому его авторы предложили алгоритм, улучшающий производительность - Fast R-CNN. Его характерной особенностью является подача на вход CNN всего изображения для формирования карты объектов. Преобразование признаков к фиксированному размеру производится с помощью Region of Interest (RoI). Принцип RoI заключается в делении региона сетку, размер ячеек которой совпадает с размерностью выхода, после чего по ячейкам сетки проводится выбор максимального значения. Таким образом, операция свёртки применяется только один раз для каждого изображения. Также в Fast R-CNN используется совместное обучение SVM, CNN и bounding-box регрессора вместо независимого обучения.

YOLO

См.также

Источники информации