实时实例分割模型SparseInst
-
实时实例分割模型SparseInst
论文标题: Sparse Instance Activation for Real-Time Instance Segmentation
论文地址:https://arxiv.org/pdf/2203.12827.pdf
论文代码: https://github.com/hustvl/SparseInst
摘要
- 背景介绍: 以前,大多数实例分割方法严重依赖于基于边界框或密集中心的对象检测和掩码预测。
- 创新点: 论文提出了一种概念新颖、高效且完全卷积的实时图像分割框架,提出了一组稀疏的实例激活映射,作为一种新的对象表示,用于每个前景对象的高亮度信息区域。然后根据突出显示的区域聚合特征,获得实例级特征,用于识别和分割。此外,基于二部匹配,实例激活映射可以以一对一的方式预测对象,从而避免了后处理中的非最大抑制(NMS)。
- 实验结果: 由于具有实例激活图的简单而有效的设计,SparseInst的推理速度非常快,在COCO基准上达到40 FPS和37.9 AP,在速度和准确性方面明显优于counterparts
算法
如图3所示,SparseInst是一个简单、紧凑、统一的框架,由主干网络、实例上下文编码器和基于IAM的解码器组成。
主干网络,例如ResNet,从给定图像中提取多尺度特征。
实例上下文编码器与主干网络连接,以增强更多上下文信息并融合多尺度特征。
这些特征将被馈送到后续基于IAM的解码器,以生成实例激活图,突出显示前景对象,以进行分类和分割
实例激活图IAM
直观地说,实例激活图是实例感知加权图,旨在突出显示每个对象的信息区域,对识别和分离对象都具有实例意识。因此,可以根据激活图直接聚合特征作为实例特征。
给定输入图像特征X∈RD×(H×W)X \in R^{D \times (H \times W)}X∈RD×(H×W),实例激活图可以表示为:A=Fiam(X)∈ND×(H×W)A=F_{iam}(X) \in N^{D \times (H \times W)}A=Fiam(X)∈ND×(H×W),其中A是N个实例激活图的稀疏集,FiamF_{iam}Fiam是具有sigmoid非线性的简单网络。
然后,可以通过:z=AXT∈RN×Dz= A X^T \in R^{N \times D}z=AXT∈RN×D从输入特征X和实例激活图X中收集不同的信息来获得稀疏的实例特征集,其中z=(zi)Nz = (z_i)^Nz=(zi)N是图像中N个潜在对象的特征表示,对于每个实例图,A被规范化为1。稀疏实例感知特征z直接用于后续识别和实例级分割。
实例激活图不会利用显式监督(例如实例掩码)来学习。本质上,后续的识别和分割模块提供了间接监督,这鼓励FiamF_{iam}Fiam发现感兴趣信息区域。此外,由于二部匹配,监督是实例感知的,这进一步强制FiamF_{iam}Fiam区分对象,并且每个map只激活一个对象。因此,所提出的实例激活图能够识别出单个对象的强区分区域。
基于IAM的解码器
基于IAM的解码器包含一个实例分支和一个掩码分支。这两个分支由256通道的3×3卷积堆栈组成。实例分支旨在生成实例激活图和N个实例特征,用于识别和实例感知内核。掩码分支用于对实例感知掩码特征进行编码。
FiamF_{iam}Fiam
采用了一种简单而有效的带有sigmoid的3×3卷积作为FiamF_{iam}Fiam,它用单个激活图突出显示每个实例。
因此,可以通过激活图获得实例特征z,其中每个潜在对象被编码到256-d向量中。然后应用三个线性层进行分类、对象评分和掩码核(wi)N(w_i)^N(wi)N。
IoU-aware ObjectnessIoU感知对象
作者发现,一对一的分配将强制大多数预测成为背景,这可能会降低分类置信度,并导致分类分数和分段掩码之间的不一致。
为了缓解上述问题,引入IoU感知对象来调整分类输出。采用预测掩模和真实掩模之间的估计IoU作为前景对象的目标。
掩码头
利用实例分支生成的实例感知掩码核(wi)N(w_i)^N(wi)N,可以通过mi=wiMm_i=w_iMmi=wiM直接生成每个实例的分段掩码,其中mi是第i个实例预测掩码,其对应的掩码内核是wi∈R1×Dw_i \in R^{1 \times D}wi∈R1×D。M∈RD×h×WM \in R^{D \times h \times W}M∈RD×h×W是掩码特征。
最终分割掩模将进行上采样(通过双线性插值)至原始分辨率
标签分配与二部匹配损失
SparseInst输出一组固定大小的预测,很难用传统的损失进行计算。
为了解决端到端的训练问题,将标签分配表述为二部匹配。首先,提出了一种基于成对dice的匹配分数C(i,k)C(i, k)C(i,k),用于第i个预测和第k个标签对象,该分数由分类分数和分割掩码的dice coefficient系数确定。
其中,α是一个超参数,用于平衡分类和分割的影响,根据经验设置为0.8。
ckc_kck为第k个真值对象的类别标签,pi,ckp_{i, c_k}pi,ck表示第i个预测的类别ckc_kck的概率。mim_imi和tkt_ktk分别是第i个预测和第k个真值对象的掩码。
dice coefficient系数定义如下。
整个训练损失定义如下,包括分类损失、目标预测损失和分割损失。
实验
对比实验
消融实验
可视化