Object detection является процессом нахождения и классификации объектов в изображении. Один подход глубокого обучения, области со сверточными нейронными сетями (R-CNN), комбинирует прямоугольные предложения по области со сверточными функциями нейронной сети. R-CNN является алгоритмом обнаружения 2D этапа. Первая стадия идентифицирует подмножество областей в изображении, которое может содержать объект. Второй этап классифицирует объект на каждую область.
Приложения для детекторов объекта R-CNN включают:
Автономное управление
Умные системы наблюдения
Распознавание лиц
Computer Vision Toolbox™ обеспечивает объектные детекторы для R-CNN, Быстрого R-CNN и Более быстрых алгоритмов R-CNN.
Модели для обнаружения объектов с помощью областей с CNNs основаны на следующих трех процессах:
Найдите области в изображении, которое может содержать объект. Эти области называются region proposals.
Извлеките функции CNN из предложений по области.
Классифицируйте объекты, использующие извлеченные функции.
Существует три варианта R-CNN. Каждый вариант пытается оптимизировать, убыстриться, или улучшить результаты одного или нескольких из этих процессов.
Детектор R-CNN [2] первый генерирует предложения по области с помощью алгоритма, такие как Поля Ребра [1]. Области предложения обрезаны из изображения и изменены. Затем CNN классифицирует обрезанные и измененные области. Наконец, ограничительные рамки предложения по области усовершенствованы машиной вектора поддержки (SVM), которая обучена, использовав функции CNN.
Используйте функцию trainRCNNObjectDetector
, чтобы обучить детектор объекта R-CNN. Функция возвращает объект rcnnObjectDetector
, который обнаруживает объекты в изображении.
Как в детекторе R-CNN, Быстрый детектор R-CNN [3] также использует алгоритм как Поля Ребра, чтобы сгенерировать предложения по области. В отличие от детектора R-CNN, какие обрезки и изменяют размер предложений по области, Быстрый детектор R-CNN обрабатывает целое изображение. Принимая во внимание, что детектор R-CNN должен классифицировать каждую область, Быстрый R-CNN объединяет функции CNN, соответствующие каждому предложению по области. Быстрый R-CNN более эффективен, чем R-CNN, потому что в Быстром детекторе R-CNN, вычисления для перекрывающихся областей совместно используются.
Используйте функцию trainFastRCNNObjectDetector
, чтобы обучить детектор объекта Fast R-CNN. Функция возвращает fastRCNNObjectDetector
, который обнаруживает объекты от изображения.
Более быстрый детектор R-CNN [4]. Вместо того, чтобы использовать внешний алгоритм как Поля Ребра, Более быстрый R-CNN добавляет сеть предложения по области (RPN), чтобы сгенерировать предложения по области непосредственно в сети. RPN использует Поля Привязки для Обнаружения объектов. Генерация предложений по области в сети быстрее и лучше настраивается на ваши данные.
Используйте функцию trainFasterRCNNObjectDetector
, чтобы обучить детектор объекта Faster R-CNN. Функция возвращает fasterRCNNObjectDetector
, который обнаруживает объекты от изображения.
Это семейство объектных детекторов использует предложения по области обнаружить объекты в изображениях. Количество предложенных областей диктует время, которое требуется, чтобы обнаружить объекты в изображении. Быстрый R-CNN и Более быстрые детекторы R-CNN разработаны, чтобы улучшать производительность обнаружения с большим количеством областей.
Детектор R-CNN | Описание |
---|---|
trainRCNNObjectDetector |
|
trainFastRCNNObjectDetector |
|
trainFasterRCNNObjectDetector |
|
Можно использовать предварительно обученную нейронную сеть свертки (CNN) в качестве основания для детектора R-CNN, также называемого transfer learning. Смотрите Предварительно обученные Глубокие нейронные сети (Deep Learning Toolbox). Используйте одну из следующих сетей с trainRCNNObjectDetector
, trainFasterRCNNObjectDetector
или функциями trainFastRCNNObjectDetector
. Чтобы использовать любую из этих сетей, необходимо установить соответствующую модель Deep Learning Toolbox™:
Можно также разработать пользовательское основанное на модели на предварительно обученном CNN классификации изображений. См. Проект R-CNN, Быстрый R-CNN, и раздел Faster R-CNN Model и приложение Deep Network Designer.
Можно разработать пользовательские модели R-CNN на основе предварительно обученного CNN классификации изображений. Можно также использовать Deep Network Designer, чтобы создать, визуализировать, и отредактировать нейронную сеть для глубокого обучения.
Основная модель R-CNN запускается с предварительно обученной сети. Последние три слоя классификации заменяются новыми слоями, которые характерны для классов объектов, которые вы хотите обнаружить.
Для примера того, как создать сеть обнаружения объектов R-CNN, смотрите, Создают Сеть Обнаружения объектов R-CNN
Быстрые сборки модели R-CNN на основной модели R-CNN. Слой регрессии поля добавляется, чтобы изменить к лучшему положение объекта в изображении путем изучения набора смещений поля. Слой объединения ROI вставляется в сеть, чтобы объединить функции CNN каждого предложения по области.
Для примера того, как создать Быструю сеть обнаружения объектов R-CNN, смотрите, Создают Быструю Сеть Обнаружения объектов R-CNN
Более быстрые сборки модели R-CNN на модели Fast R-CNN. Сеть предложения по области добавляется, чтобы произвести предложения по области вместо того, чтобы получить предложения из внешнего алгоритма.
Для примера того, как создать Более быструю сеть обнаружения объектов R-CNN, смотрите, Создают Более быструю Сеть Обнаружения объектов R-CNN
Можно использовать Image Labeler, Video Labeler или Ground Truth Labeler (доступный в Automated Driving Toolbox™) приложения, чтобы в интерактивном режиме маркировать пиксели и экспортировать данные о метке для обучения. Приложения могут также использоваться, чтобы маркировать прямоугольные видимые области (КОРОЛИ) для обнаружения объектов, метки сцены для классификации изображений и пиксели для семантической сегментации.
[1] Zitnick, К. Лоуренс и П. Доллэр. "Поля ребра: Определение местоположения объектных предложений от ребер". Компьютерное-зрение-ECCV. Springer International Publishing. Страницы 391-4050. 2014.
[2] Girshick, R., Дж. Донахью, Т. Даррелл и Дж. Малик. "Богатые иерархии функции для точного обнаружения объектов и семантической сегментации". CVPR '14 продолжений 2 014 конференций по IEEE по компьютерному зрению и распознаванию образов. Страницы 580-587. 2014
[3] Girshick, Росс. "Быстрое r-cnn". Продолжения Международной конференции IEEE по вопросам Компьютерного зрения. 2015
[4] Жэнь, Shaoqing, Kaiming он, Росс Джиршик и Цзянь Sun. "Более быстрый R-CNN: к обнаружению объектов в реальном времени с сетями предложения по области". Усовершенствования в нейронных системах обработки информации. Издание 28, 2015.
fastRCNNObjectDetector
| fasterRCNNObjectDetector
| rcnnObjectDetector
| trainFastRCNNObjectDetector
| trainFasterRCNNObjectDetector
| trainRCNNObjectDetector