Paper Express | Алгоритм сегментации экземпляров BlendMask, в реальном времени и современный

глубокое обучение

BlendMask извлекает более точные функции сегментации экземпляров, комбинируя семантическую информацию верхнего и нижнего уровня с более разумным модулем смешивания Эффект этой модели является современным, но структура очень оптимизирована, а скорость вывода не медленный Максимальная точность может достигать 41,3AP, производительность и скорость версии BlendMask-RT в реальном времени составляют 34,2mAP и 25FPS соответственно, а метод оптимизации статьи очень ценен для изучения, его стоит прочитать

Бумага: BlendMask: «Сверху вниз» встречается «снизу вверх» для сегментации экземпляров

Introduction


  В первые дни существует два типа моделей плотной сегментации экземпляров: подход сверху вниз и подход снизу вверх.

top-down apporach

  Модель сверху вниз сначала получает область блока с помощью некоторых методов, а затем выполняет извлечение маски для пикселей в этой области.Эта модель обычно имеет следующие проблемы:

  • Локальная согласованность между функциями и масками будет потеряна.В документе обсуждается Deep-Mask и используется fc для предложения масок.
  • Извлечение избыточных функций, разные блоки будут повторно извлекать маску один раз
  • Информация о местоположении теряется из-за использования сверток, которые сжимают карту объектов.

bottom-up apporach

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

  • Сильная зависимость от качества попиксельных прогнозов может легко привести к неоптимальной сегментации.
  • Из-за низкоразмерного извлечения масок возможность сегментации сложных сцен (несколько категорий) ограничена.
  • Требует сложных методов постобработки

hybridizing apporach

  Принимая во внимание вышеуказанные проблемы, в статье сочетаются стратегии «сверху вниз» и «снизу вверх», а также используется информация на уровне экземпляра (bbox) для прогнозирования обрезки и веса на пиксель. Хотя FCIS и YOLACT имеют схожие идеи, в документе говорится, что они плохо обрабатывают функции верхнего и нижнего уровня.Высокоразмерные функции содержат общую информацию об экземпляре, в то время как низкоразмерные функции сохраняют лучшую информацию о местоположении, в центре внимания статьи заключается в изучении того, как комбинировать высокие и низкие размерные признаки.Основные вклады заключаются в следующем:

  • Предложил основанный на предложении метод слияния масок экземпляров, блендер, который улучшает метод слияния YOLACT и FCIS на 1,9 и 1,3 мАп соответственно на COCO.
  • Простой сетевой алгоритм BlendMask на основе FCOS
  • Время вывода BlendMask не увеличивается с количеством прогнозов, как у детектора второго порядка.
  • Точность и скорость BlendMask лучше, чем у Mask R-CNN, а mAP маски на 1,1 выше, чем у лучшей полностью сверточной сети сегментации экземпляров Tensor-Mask.
  • Поскольку нижний модуль может одновременно сегментировать несколько объектов, BlendMask можно использовать непосредственно для сегментации панорамы.
  • Выход маски Mask R-CNN фиксируется как28\times 28, выходной пиксель маски BlendMask может быть очень большим и не ограничивается FPN.
  • BlendMask универсален и гибок и может использоваться в других задачах распознавания на уровне экземпляра, таких как обнаружение ключевых точек, с небольшими изменениями.

Our methods


Overall pipeline

BlendMask включает в себя сеть обнаружения и ветвь маски. Ветвь маски состоит из 3 частей. Нижний модуль используется для прогнозирования карт оценок, верхний слой используется для прогнозирования внимания экземпляров, а модуль блендера используется для интеграции оценок и внимания. общая архитектура показана на рисунке 2.

  • Bottom module

  Карты очков, предсказанные нижним модулем, в тексте называются базойB.BразмерN\times K\times \frac{H}{s}\times \frac{W}{s}, где N — размер партии, K — количество оснований,H\times Wразмер ввода, иs- размер выходного шага карт оценок.

DeepLab V3+

  В документе используется декодер DeepLab V3+. Декодер содержит два входа: функцию низкого уровня и функцию высокого уровня. Функция высокого уровня подвергается повышающей дискретизации, а затем объединяется с функцией низкого уровня. Также здесь можно использовать другие структуры, а на вход нижнего модуля может быть фича бэкбона, или это может быть пирамида фич, аналогичная YOLACT или Panoptic FPN

  • Top Layer

  К каждой вышке обнаружения прикреплен сверточный слой для прогнозирования внимания на высшем уровне.A. В YOLACT каждый уровень пирамиды (H_l\times W_l) выводAзаN\times K\times H_l\times W_l, то есть общее значение веса каждого канала, соответствующего базе. Выход бумагиAзаN\times (K\cdot M\cdot M)\times H_l\times W_l,M\times M— разрешение внимания, то есть значение веса пикселя, соответствующего каждому каналу базы, с более мелкой детализацией, что является поэлементной операцией (описано далее).
  Поскольку внимание представляет собой трехмерную структуру (K\cdot M\cdot M), поэтому он может узнать некоторую информацию об уровне экземпляра, например приблизительную форму и положение объекта.MЗначение относительно невелико, делаются только грубые прогнозы, обычно максимальное значение равно 14, а выходной канал равен (K\cdot M\cdot M) для достижения свертки. Перед отправкой в ​​следующий модуль используйте метод постобработки FCOS, чтобы выбрать верхние блоки D bbox.P=\{p_d \in \mathbb{R}_{\ge0}^4 |d=1...D\}и соответствующее вниманиеA=\{a_d \in \mathbb{R}^{K\times M\times M} |d=1...D\}, конкретный метод выбора заключается в выборе достоверности классификации\geВерхние квадраты D порога, порог обычно равен 0,05.

  • Blender module

  Модуль Blender является ключевой частью BlendMask, которая объединяет выходные данные позиционно-зависимой базы в соответствии с вниманием.

Blender module

  Вход модуля блендера является базой нижнего уровняBи избранные внимания на высшем уровнеAи боксP

  Во-первых, используйте ROIPooler Mask R-CNN для перехвата каждого bboxp_dСоответствующая базовая область и изменение размера на фиксированныйR\times Rкарта характеристик размераr_d. В частности, используя RoIAlign с коэффициентом выборки = 1, в каждом бине выбирается только 1 точка, а Mask R-CNN выбирает 4 точки в каждом бине. При обучении gt bbox используется напрямую как предложения, а при инференсе используется напрямую результат обнаружения FCOS

  размер вниманияMчемRмаленький, поэтому надоa_dинтерполировать изM\times MстатьR\times R,R=\{r_d|d=1...D\}

  Тогда правильноa_d^{'}K-мерное внимание нормализуется softmax отдельно для создания набора карт оценок.s_d

  Тогда для каждого регионаRизr_dи соответствующая карта очковSизs_dВыполните поэлементное произведение и, наконец, добавьте результаты K, чтобы получитьm_d

  На рисунке 1 визуализирована работа модуля смешивания.Вы можете увидеть характеристики внимания и базы, а также процесс слияния, который можно назвать очень ярким.

Configurations and baselines

  Гиперпараметры BlendMask следующие:

  • R, разрешение нижнего уровня RoI
  • M, разрешение предсказания верхнего уровня
  • K, количество баз (каналов)
  • Вход нижнего модуля может быть функцией магистральной сети или FPN.
  • Метод выборки базы может быть ближайшим соседом или билинейным объединением.
  • Метод интерполяции для внимания верхнего уровня может быть ближайшим соседом или билинейной выборкой.

  Сокращения для документовR\_K\_MДля представления модели магистральные признаки C3 и C5 используются в качестве входных данных нижнего модуля, внимание верхнего уровня использует интерполяцию ближайшего соседа, а нижний уровень использует билинейную интерполяцию, которая согласуется с RoIAlign.

Semantics encoded in learned bases and attentions

  Результаты визуализации базы и внимания показаны на рисунке 3. В документе считается, что BlendMask может извлекать два вида информации о положении:

  • Находится ли пиксель на объекте (семантические маски)
  • Находится ли пиксель в определенной части объекта (функции, зависящие от положения), например, в верхнем левом углу, в нижнем правом углу.

Красная и синяя базы определяют верхнюю правую и нижнюю левую части цели соответственно, желтая база определяет точки с высокой вероятностью на цели (семантическая маска), а зеленая база активирует границу объекта. -чувствительные функции помогают выполнять сегментацию на уровне экземпляра, а семантическая маска может дополнять чувствительные к положению, делая конечный результат более плавным. Из-за изучения более точных функций BlendMask использует гораздо меньшую базовую широту, чем YOLACT и FCIS (4 против 32 против 49).

Experiment


Эксперимент по абляции

  • Merging methods: Blender vs. YOLACT vs. FCIS

  Статья превращает blender в модель слияния двух других алгоритмов для экспериментов.Как видно из таблицы 1, метод слияния Blender лучше, чем два других алгоритма.

  • Top and bottom resolutions

Как видно из таблицы 2, с увеличением разрешения точность становится все выше и выше.Чтобы сохранить эффективность затрат, отношение R/M сохраняется выше 4. В целом, время вывода относительно стабильный.

  • Number of bases

  Из таблицы 3 видно, что K=4 является оптимальным

  • Bottom feature locations: backbone vs. FPN

  Как видно из рисунка 4, использование функций FPN в качестве входных данных нижнего модуля не только повышает эффективность, но и ускоряет время вывода.

  • Interpolation method: nearest vs. bilinear

  Билинейный на 0,2 AP выше, чем у ближайшего соседа при интерполяции внимания верхнего уровня.

  При интерполяции карт оценок нижнего уровня билинейность на 2AP выше, чем у ближайшего соседа

  • Other improvements

  В статье также проводились другие эксперименты по улучшению сетевого эффекта.Хотя эти приемы в определенной степени улучшили сеть, они не были добавлены в окончательную сеть.

Main result

  • Quantitative results

  Судя по результатам, BlendMask лучше текущего алгоритма сегментации экземпляров с точки зрения эффекта и скорости, но один момент заключается в том, что когда R-50 не использует мультимасштаб, эффект BlendMask хуже, чем у Mask R-CNN.

  • Real-time setting

  Для сравнения с YOLACT в статье преобразована компактная версия BlendMask-RT: 1) Уменьшено количество сверток прогнозирующей головы 2) Объединить классификационную башню и коробчатую башню 3) Использовать Proto-FPN и удалить P7. Судя по результатам, BlendMask-RT на 7 мс быстрее и на 3,3 AP выше, чем YOLACT.

  • Qualitative results

Результаты визуализации представлены на рисунке 4. Видно, что эффект BlendMask лучше, чем у Mask R-CNN, поскольку разрешение маски BlendMask составляет 56, а у Mask R-CNN — всего 28. трудно различить соседние экземпляры, а у BlendMask такой проблемы нет

Discussions


  • Comparison with Mask R-CNN

  Структура BlendMask аналогична Mask R-CNN.Он ускоряется за счет удаления чувствительной к положению карты признаков и повторного извлечения признаков маски, а также заменяет исходный сложный глобальный расчет признаков блендером, управляемым вниманием.
  Еще одним преимуществом BlendMask является то, что он создает высококачественные маски, а выходное разрешение не ограничивается сэмплированием верхнего уровня. Для Mask R-CNN увеличение разрешения увеличит время расчета головы, и необходимо увеличить глубину головы, чтобы извлечь точные признаки маски. Кроме того, время вывода Mask R-CNN будет увеличиваться по мере увеличения количества блоков, что неблагоприятно для вычислений в реальном времени.   Наконец, модуль блендера очень гибок, потому что прогнозирование внимания экземпляра верхнего уровня имеет только один сверточный слой, который почти бесплатно можно добавить к другим алгоритмам обнаружения.

  • Panoptic Segmentation

  BlendMask может выполнять задачи панорамной сегментации, используя ветвь семантической сегментации Panoptic-FPN. Судя по результатам, BlendMask работает лучше

Суммировать


BlendMask объединяет семантическую информацию верхнего и нижнего уровня с помощью более разумного модуля блендера для извлечения более точных функций сегментации экземпляров.Эта модель объединяет структуру различных превосходных алгоритмов, таких как YOLACT, FOCS, Mask R-CNN, сравнение сложно, но это имеет большое справочное значение. Модель BlendMask очень оптимизирована, эффект современный, скорость вывода не низкая, максимальная точность может достигать 41,3 AP, производительность и скорость версии BlendMask-RT в реальном времени составляют 34,2 мАд. и 25FPS соответственно, а эксперименты в статье сделаны хорошо, стоит почитать

Справочное содержание

Если эта статья была вам полезна, ставьте лайк или смотрите~ Для получения дополнительной информации, пожалуйста, обратите внимание на личный публичный аккаунт WeChat [Примечания по разработке алгоритмов Xiaofei].

work-life balance.