Region Proposal Network
Region Proposal Network — это тип свёрточной нейронной сети, предназначенный для генерации прямоугольных областей (предложений), которые с высокой вероятностью содержат объекты интереса на изображении. RPN является ключевым компонентом архитектуры Faster R-CNN, одной из наиболее распространённых моделей для обнаружения объектов (object detection). Основная задача RPN — заменить традиционные методы скользящего окна и селективного поиска, обеспечивая более быструю и эффективную генерацию регионов-кандидатов.
История
До появления RPN задача обнаружения объектов решалась в два этапа: сначала генерировались потенциальные области интереса (region proposals), затем для каждой из них выполнялась классификация и уточнение координат. Первые методы, такие как Selective Search (Uijlings et al., 2013) и EdgeBoxes (Zitnick & Dollár, 2014), были медленными и не могли быть обучены сквозным образом вместе с детектором. В 2015 году группа исследователей из Microsoft Research (Ren, He, Girshick, Sun) предложила архитектуру Faster R-CNN, где RPN встраивается непосредственно в сеть детекции. Это позволило сократить время генерации предложений с нескольких секунд до миллисекунд и впервые сделать полный пайплайн обнаружения объектов полностью обучаемым от начала до конца. Статья «Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks» была представлена на конференции NIPS 2015 и с тех пор стала одной из самых цитируемых в области компьютерного зрения.
Архитектура и принцип работы
RPN работает поверх карты признаков, полученной от базовой свёрточной сети (backbone), такой как VGG-16, ResNet или MobileNet. Карта признаков представляет собой уменьшенное в несколько раз изображение, где каждый пиксель соответствует некоторой пространственной области исходного кадра.
Скользящее окно и анкеры
На карте признаков применяется небольшое свёрточное окно (например, 3×3). Для каждой позиции этого окна RPN генерирует несколько анкерных боксов (anchor boxes) — заранее заданных прямоугольников различного масштаба и соотношения сторон, центрированных в этой точке. Типичный набор анкеров включает 3 масштаба (например, 128², 256², 512² пикселей) и 3 соотношения сторон (1:1, 1:2, 2:1), что даёт 9 анкеров на каждую позицию. Для карты признаков размером, например, 60×40 это означает 60×40×9 = 21 600 потенциальных предложений.
Две параллельные ветви
Каждый анкерный бокс обрабатывается двумя параллельными полносвязными слоями:
- Ветвь классификации (cls): двухклассовый классификатор, который определяет, содержит ли анкер объект (foreground) или является фоном (background). Выход — 2k значений (k — число анкеров на позицию), где первое значение — вероятность фона, второе — объекта.
- Ветвь регрессии (reg): регрессор, который предсказывает 4 смещения (dx, dy, dw, dh) для уточнения координат анкерного бокса относительно истинного ограничивающего прямоугольника (ground truth). Выход — 4k значений.
Обучение
RPN обучается с использованием многозадачной функции потерь, включающей:
- Потерю классификации — кросс-энтропийная потеря для бинарной классификации (объект/фон).
- Потерю регрессии — гладкая L1-потеря (smooth L1) для предсказанных смещений относительно истинных.
Анкеры размечаются как положительные, если их пересечение с истинным прямоугольником (IoU) превышает 0.7, и как отрицательные, если IoU меньше 0.3. Анкеры с промежуточными значениями игнорируются. Для баланса классов используется стратегия случайной выборки: из всех анкеров выбирается мини-батч (например, 256), где соотношение положительных и отрицательных образцов не превышает 1:1.
Не максимальное подавление (NMS)
После предсказания RPN генерирует множество перекрывающихся предложений. Для устранения дублирования применяется алгоритм не максимального подавления (Non-Maximum Suppression, NMS). NMS сортирует предложения по вероятности содержания объекта, затем последовательно удаляет те, чьё пересечение с более вероятным предложением превышает заданный порог (обычно 0.7). В результате остаётся, например, 2000 или 300 лучших предложений, которые передаются на следующий этап — классификацию и уточнение координат в сети-детекторе (например, Fast R-CNN).
Классификация
RPN можно классифицировать по нескольким признакам:
По способу генерации анкеров
- Фиксированные анкеры — используются заранее заданные масштабы и соотношения сторон, как в оригинальной Faster R-CNN.
- Адаптивные анкеры — параметры анкеров подбираются на основе статистики обучающей выборки (например, с помощью K-средних на размерах истинных прямоугольников).
- Динамические анкеры — анкеры генерируются нерегулярно, в зависимости от содержимого изображения (например, в Guided Anchoring).
По архитектуре
- Одноуровневая RPN — стандартная реализация с одним свёрточным окном.
- Многоуровневая RPN — используется в Feature Pyramid Network (FPN), где RPN применяется на нескольких уровнях пирамиды признаков, что улучшает обнаружение объектов разного размера.
По типу базовой сети
- На основе VGG — исторически первая реализация.
- На основе ResNet — более глубокая архитектура, часто используется с FPN.
- Лёгкие варианты — на основе MobileNet, ShuffleNet для мобильных устройств.
Применение
RPN является фундаментальным строительным блоком в современных системах обнаружения объектов. Основные области применения:
- Автономное вождение — обнаружение пешеходов, транспортных средств, дорожных знаков на видеопотоке в реальном времени.
- Медицинская диагностика — выделение патологических областей на рентгеновских снимках, КТ, МРТ.
- Промышленный контроль качества — поиск дефектов на производственных линиях.
- Видеонаблюдение и безопасность — детекция подозрительных объектов, подсчёт людей.
- Робототехника — навигация и манипуляция объектами.
- Системы дополненной реальности — распознавание и отслеживание объектов в кадре.
Преимущества и недостатки
Преимущества
- Скорость: генерация предложений занимает порядка 10 миллисекунд на изображение, что в десятки раз быстрее Selective Search.
- Сквозное обучение: RPN обучается вместе с детектором, что позволяет оптимизировать всю систему под конкретную задачу.
- Качество предложений: RPN генерирует меньше ложных срабатываний по сравнению с классическими методами.
- Универсальность: RPN может быть адаптирована под различные базовые архитектуры и задачи.
Недостатки
- Зависимость от анкеров: фиксированные анкеры плохо работают для объектов с нестандартными пропорциями (например, длинные трубы, узкие столбы).
- Вычислительная сложность: для карт признаков большого размера количество анкеров может быть очень велико (сотни тысяч), что требует значительных ресурсов памяти.
- Дисбаланс классов: подавляющее большинство анкеров являются фоном, что требует специальных техник обучения (например, OHEM — Online Hard Example Mining).
- Дублирование предложений: NMS может удалять полезные предложения при высоком перекрытии объектов.
Развитие и альтернативы
После появления RPN было предложено множество улучшений и альтернатив:
- FPN (Feature Pyramid Network) — интеграция RPN с пирамидой признаков для обнаружения объектов разного масштаба.
- Cascade RPN — каскадная структура, где несколько RPN последовательно уточняют предложения.
- MetaAnchor — динамическая генерация анкеров на основе информации об изображении.
- Transformer-based детекторы (DETR, Deformable DETR) — отказ от анкеров и RPN в пользу механизма внимания, однако такие модели требуют больше вычислительных ресурсов и данных для обучения.
В современных исследованиях RPN остаётся популярным выбором для задач, где важна скорость и стабильность, особенно в сочетании с лёгкими базовыми сетями для встраиваемых систем.
Источники
- Ren, S., He, K., Girshick, R., & Sun, J. (2015). Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks. Advances in Neural Information Processing Systems (NIPS).
- Lin, T. Y., Dollár, P., Girshick, R., He, K., Hariharan, B., & Belongie, S. (2017). Feature Pyramid Networks for Object Detection. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR).
- Uijlings, J. R. R., van de Sande, K. E. A., Gevers, T., & Smeulders, A. W. M. (2013). Selective Search for Object Recognition. International Journal of Computer Vision.
- Zitnick, C. L., & Dollár, P. (2014). Edge Boxes: Locating Object Proposals from Edges. European Conference on Computer Vision (ECCV).
- Girshick, R. (2015). Fast R-CNN. Proceedings of the IEEE International Conference on Computer Vision (ICCV).
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →