TensorMask — это алгоритм instance сегментации для распознавания плотно расположенных объектов на изображении. Нейросеть использует метод скользящего окна для сегментации объектов. Разработкой алгоритма занимались исследователи из FAIR. По результатам экспериментов, TensorMask сегментирует объекты с средней точностью (AP) в 37.1% на датасете COCO. При этом state-of-the-art модель Mask R-CNN работает с AP в 38.3%.
Метод скользящего окна в последнее время начал набирать популярность для распознавания границ объектов. Этот метод позволяет точно распознать объекты за одну итерацию без необходимости дополнительно уточнять границы объектов. Несмотря на это, такой подход не был эффективен для задачи instance сегментации. Это связано с тем, что instance маски представляют собой сложные двухмерные геометрические фигуры, а не прямоугольники. В TensorMask используются четырехмерные тензоры для эффективного представления масок.
Как это работает
Четырехмерные тензоры состоят из подтензоров, оси которых представляют блоки пикселей. Подтензоры позволяют использовать геометрически значимые операции. Например, трансформации координат, апскейлинг, даунскейлинг и пирамиды для масштабирования. Предыдущие попытки использования многомерных тензоров, как DeepMask, использовали неструктурированные 3D тензоры, которые не имели прямой геометрической интерпретации. Это результировало в сложности манипулирования представлениями.
Чтобы генерировать маски в скользящих окнах, исследователи используют различные представления тензоров. В этих представлениях подтензоры содержат параметры маски. Предыдущие подходы к представлению масок либо менее эффективны, либо склонны к производству артефактов. TensorMask наиболее справляется с плотными перекрывающимися объектами на изображении.
Почему это важно
TensorMask развивает отличный от стандартного подход к instance сегментации. С TensorMask использование боксов больше не необходимо для точного instance сегментирования объектов на изображении.