FANet:Deep Feature Aggregation for Real-Time Semantic Segmentation
DFANet是旷视发布于2019年4月份的一个针对于道路场景理解的语义分割网络,该网络的backbone采用的是轻量级的Xception网络,然后分别通过sub-network和sub-stage来进行级联聚合特征信息。
该网络模型的设计出发点是为了更好的更充分的利用下采样过程中各个特征图的信息,文中利用两种策略来实现不同特征图的信息聚合,第一个是将backbone采集的不同尺寸的特征信息来进行重复使用,进行语义层和空间层的信息融合(对应的sub-network)。第二个是在网络结构的过程路径中,通过不同的阶段的特征组合来提升网络特征的表现能力(对应sub-stage)。
网络结构介绍
网络的结构图如下所示。
从图1也可以看出,sub-network的重点是将前一个backbone的高层特征图上采样到下一个backbone的输入,以精修预测结果。sub-network也可以看作是一个将像素预测从粗略到精细的过程。sub-stage则是在相应的阶段中的“粗略”到“精细”部分进行不同特征之间的组合。这样可以通过组合相同维度的不同特征图来传递感受野和高维度的结构细节。网络结构中的fc attention模块是参考SENet的设计理念,通过逐通道的选择特征图比例来提高网络的表现能力。因此,为了更好地提取语义信息和类别信息,FC attention中的全连接层在ImageNet上预训练得到。( 在分类任务中,网络的最后一般都是Global Pooling + FC,得到一个类别概率向量。)FC后接一个1 x 1的卷积,匹配每个backbone输出特征图的channel维度。
文中指出了轻量化模型中多支路输入网络的不足之处:1.多支路输入网络缺少了不同支路之间对于高层特征的组合;2不同的支路之间也缺少了信息的交互;3.对于高分辨率的输入图片来说限制了网络的推理速度提升。
实验部分
网络的初始实验部分,作者以Xception作为backbone进行实验,作者实验对比了Xception+ASPP与resnet50的效果,发现二者能够取得近似的准确率,但是Xception+ASPP的推理速度要快很多,证明了ASPP模块的有效性,但是ASPP对于轻量化模型来说计算量还是偏大。作者在后面又加入了Fully connected的自注意力模块,发现相较于不加入FC的Xception模型,准确率能够提升4-6%百分点。因此作者采用Xception+fc attention模型作为backbone,注意,加入FC attention 并没有增加太多的计算量。在此基础上验证后续sub-network和sub-stage的效果。作者采用的backbone有XceptionA和XceptionB两种,但是只是网络特征层数量上的区别。
在进行特征聚合时,其实验结果如下图所示。
上图中第一行是输入图片,第二行表示的是第一个backbone的预测结果,可以看出有大量噪音;第三行表示前二个backbone使用后的结果,对比前一行,该backbone中因为添加了很多的细节信息,结果更加平滑;对于图像结果的主观评估也验证了 DFANet 结构的有效性。如下图所示,随着特征提取塔数的加多,分割结果中错误的细节越来越少,直到逼近真实答案。这说明随着越来越多的特征被聚合,原来“看不明白”的地方可以被更正确的理解与预测。
最终的准确率结果如下图所示。
根据解码器的操作,backboneA x3的精度要比backboneA x2更好。与前面的结论一样,这也说明了细节是在sub-stage3中学习得到的,而噪声是在不同比例输出的组合中被逐渐去除。
最后是推理速度的对比,直接上图作为展示。