其他分享
首页 > 其他分享> > RelationNet:学习目标间关系来增强特征以及去除NMS | CVPR 2018

RelationNet:学习目标间关系来增强特征以及去除NMS | CVPR 2018

作者:互联网

论文基于NLP的注意力机制提出了目标关系模块,通过与其它目标的比对增强当前目标的特征,而且还可以代替NMS进行端到端的重复结果去除,思想十分新颖,效果也不错

来源:晓飞的算法工程笔记 公众号

论文: Relation Networks for Object Detection

Introduction


  当前大多数目标检测算法仍专注于单独识别目标,没有尝试在训练时挖掘目标之间的关系,受限于当前简单的网络结构,无法对无规律的目标关系进行建模。参考自然语言处理中的注意力机制,论文提出了用于目标检测的自适应注意力机制 – 目标关系模块(object relation module),学习目标间的关系来增强特征以及去除重复结果。
  检测目标有2D空间分布和不同的长宽比,比文本的场景要复杂些,所以论文拓展了NLP的注意力权重,分为两个权重:

  目标关系模块接收可变输入并行计算,是可微的in-place操作,可作为基础构建block嵌入到任意目标检测算法中,嵌入方式如图1所示,用于目标识别部分以及重复目标去除:

Object Relation Module


  常规的注意力机制为ScaledDot-Product Attention,计算为:

  给定查询目标 q q q,计算与其它目标 K K K的相似度,然后softmax归一化为权重,最后乘以各向量的值 V V V得到加权后的特征,这3个值一般都是对目标特征进行embedding得到的。
  对于目标检测中的相似性计算,每个目标包含几何特征 f G f_G fG​和外观特征 f A f_A fA​,给定 N N N个目标 { ( f A n , f G n ) } n = 1 N \{(f^n_A, f^n_G)\}^N_{n=1} {(fAn​,fGn​)}n=1N​,可计算每个目标相对于其它目标的关系特征(relation feature) f R ( n ) f_R(n) fR​(n):

  关系特征实际为所有目标的外观特征的加权和, W V W_V WV​为线性变化,相当于将外观特征embedding为公式1的值 V V V。权值 w m n w^{mn} wmn表明其它目标相对于当前目标的重要性,计算方法为:

  公式3实际上等同于公式1中的softmax,唯一不同的是除了外观权值 w A m n w^{mn}_A wAmn​,还额外使用几何权值 w G m n w^{mn}_G wGmn​进行加权。
  外观权值 w A m n w^{mn}_A wAmn​的计算跟公式1的softmax括号内的计算一样,具体为:

  W K W_K WK​和 W Q W_Q WQ​同样为线性变化,分别将对比目标和当前目标的外观特征embedding成公式1的 K K K和 Q Q Q,embedding后的特征维度为 d k d_k dk​。
  几何权值 w G m n w^{mn}_G wGmn​的计算为:

  几何特征一般就是简单的四维bbox,所以公式5在计算几何权值包含两个步骤:

  论文在几何特征的使用上也尝试了其它方法:1) none,直接将 w G m n w^{mn}_G wGmn​设为1.0计算权值,即不使用。 2) unary,将高维几何特征直接与外观特征融合,然后跟none一样计算权值。实验部分的表1有相关的结果对比,论文选择的公式5加权方法比较有效。

  在实现时,类似于multi-head attention,一个目标关系模块(object relation module)包含 N r N_r Nr​个关系特征,每个特征的维度为输入特征 f A m f^m_A fAm​的 1 N r \frac{1}{N_r} Nr​1​,图2可能会有一点问题,几何特征写了两个,但是外观特征只写了一个,大家根据公式理解就好,最后通过相加对输入目标的外观特征进行增强:

  目标关系模块的计算逻辑如算法1所示,其空间复杂度和时间复杂度为:

  一般而言,目标关系模块的整体计算量不会很大,而且输出特征的维度和输入特征的维度一致,可作为基础构建block嵌入到任何网络中。

Relation Networks For Object Detection


  论文主要讨论将目标关系模块嵌入到region-based目标检测网络中,region-based目标检测网络一般包含四个步骤:1) 通过主干网络生成整图特征 2) 生成候选框的区域特征 3) 进行各实例识别和调整 4) 去除重复的检测结果,目标关系模块的嵌入主要在步骤3和步骤4。

Relation for Instance Recognition

  目标分类和目标回归一般使用两个1024维全连接层对目标的RoI池化特征进行处理:

  目标关系模块可直接增强所有目标的1024维,不改变特征的维度,不仅可以在任意位置插入,还可以多次堆叠:

  r 1 r_1 r1​和 r 2 r_2 r2​为目标关系模块重复的次数,添加目标关系模块能够目标特征,提高识别的准确率,公式10的可视化如图a所示。

Relation for Duplicate Removal

  去除重复目标这个任务本身就需要穷尽目标间的关系,比如启发式的NMS,高分目标可抹去其附近的低分目标。尽管NMS十分简单,但其去重的方式并不总是最优的,为此,论文采用目标关系模块去除重复目标。

  如图b所示,输入目标的分数、1024维外观特征以及几何特征,重复目标去除包含以下几个步骤:

  在训练时直接对最终的分数使用交叉熵损失迭代,虽然大部分的目标都是重复的,但由于其最终分数都很小,所以不会对网络造成很大的偏差。而在推理时,先按分类的分数过滤一轮,这样能减轻计算量,论文实测大约增加2ms,相对的,NMS和SoftNMS增加5ms左右。

Experiments


  各位置设置的对比实验。

  重复目标去重效果对比。

  在各网络中的效果对比,分别对比2fc+SoftNMS、2fc+RM+SoftNMS和2fc+RM+e2e的效果。

Conclusion


  论文基于NLP的注意力机制提出了目标关系模块,通过与其它目标的比对增强当前目标的特征,而且还可以代替NMS进行端到端的重复结果去除,思想十分新颖,效果也不错。



如果本文对你有帮助,麻烦点个赞或在看呗~
更多内容请关注 微信公众号【晓飞的算法工程笔记】

work-life balance.

标签:关系,NMS,特征,权值,目标,CVPR,2018,模块,几何
来源: https://blog.csdn.net/lichlee/article/details/119209029