Открыть сервис

Mask R-CNN

Mask R-CNN — это архитектура свёрточной нейронной сети для сегментации изображений, разработанная исследователями из Facebook (продукт Meta, признанной экстремистской и запрещённой в РФ) AI Research (организация Meta Platforms Inc. признана экстремистской и запрещена в РФ). Она одновременно решает задачи обнаружения объектов (классификация и локализация) и семантической сегментации, выделяя контур каждого объекта на уровне пикселей. Mask R-CNN является расширением архитектуры Faster R-CNN, добавляя третью ветвь вывода — маску сегментации, параллельно с ветвями классификации и регрессии ограничивающей рамки.

История

Mask R-CNN была представлена в 2017 году в статье «Mask R-CNN» (авторы — Кайминг Хэ, Джорджия Гкоксиари, Пётр Доллар, Росс Гиршик). Работа была выполнена в Facebook AI Research (организация Meta Platforms Inc. признана экстремистской и запрещена в РФ). Модель быстро стала стандартом для задач инстанс-сегментации, превзойдя по точности предыдущие подходы, такие как FCIS (Fully Convolutional Instance-aware Semantic Segmentation) и комбинации Faster R-CNN с FCN (Fully Convolutional Network). В 2018 году Mask R-CNN получила награду за лучшую работу на конференции ICCV.

Архитектура

Mask R-CNN состоит из трёх основных компонентов: базовой свёрточной сети (backbone), региональной сети предложений (Region Proposal Network, RPN) и головной сети (head), выполняющей три задачи.

Backbone (основная сеть)

В качестве backbone используется стандартная свёрточная сеть (например, ResNet-50, ResNet-101), дополненная пирамидой признаков (Feature Pyramid Network, FPN). FPN позволяет эффективно обрабатывать объекты разных масштабов, создавая многоуровневое представление изображения.

Region Proposal Network (RPN)

RPN — это небольшая свёрточная сеть, которая скользит по карте признаков и генерирует прямоугольные области (region proposals), потенциально содержащие объекты. Для каждого положения на карте признаков RPN предсказывает:

Головная сеть (Head)

Головная сеть принимает предложенные RPN области и для каждой из них выполняет три задачи:

Ключевое нововведение Mask R-CNN — RoIAlign (Region of Interest Align). В отличие от RoIPool, используемого в Faster R-CNN, RoIAlign не использует округление координат при извлечении признаков из карты признаков. Вместо этого применяется билинейная интерполяция, что позволяет сохранить точное пространственное соответствие между исходным изображением и картой признаков. Это критически важно для сегментации на уровне пикселей, так как даже небольшие ошибки в выравнивании приводят к неточным маскам.

Обучение

Обучение Mask R-CNN является многозадачным. Функция потерь (loss) представляет собой сумму трёх компонентов:

\[ L = L_{cls} + L_{box} + L_{mask} \]

Обучение проводится на больших наборах данных, таких как COCO (Common Objects in Context), который содержит более 200 000 изображений с разметкой для 80 классов объектов.

Применение

Mask R-CNN применяется в широком спектре задач, требующих точного выделения контуров объектов:

Варианты и модификации

Существует несколько модификаций и улучшений Mask R-CNN:

Ограничения

Несмотря на высокую точность, Mask R-CNN имеет ряд недостатков:

Значение

Mask R-CNN стала важной вехой в развитии компьютерного зрения, объединив задачи обнаружения и сегментации в единую эффективную архитектуру. Она продемонстрировала, что многозадачное обучение с использованием RoIAlign позволяет достичь высокой точности на уровне пикселей. Модель широко используется в академических исследованиях и промышленных приложениях, а её идеи легли в основу многих последующих архитектур, включая трансформерные модели для сегментации (например, MaskFormer, Mask2Former).

Источники

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →