美文网首页
多支路轻量化分割模型-Fast-SCNN

多支路轻量化分割模型-Fast-SCNN

作者: 孤独患者_d589 | 来源:发表于2020-02-19 11:37 被阅读0次

    摘要

            Fast-SCNN采用的是双支路分割策略,充分参考了ICNet、BiseNet、GUN、ContextNet等双支路网络的设计思路,设计了Fast-SCNN网络。


    准备工作

            作者指出,对于双支路或者是多支路的网络来说,有三点非常重要:1.较大的感受野对于学习不同类别之间的复杂关联是非常重要的,2.图像中的空间细节对于保持对象边界是必要的,3.要平衡网络推理速度和精度,需要对网络进行精心的设计。

            对于双支路网络,大多数网络采用的是深层的网络用来捕捉语义信息,而浅层的网络用来捕捉输入图像的空间信息,最后的语义分割结果是将两个支路的结果相融合,深层次的网络采用小的分辨率图像作为输入,而浅层的网络采用大的分辨率图像作为输入,这样可以很好的降低计算量。

            作者通过实验指出,对于Fast-SCNN这种小型网络,与大型网络的趋势相反,仅通过预训练或其他带有粗略标记的训练数据,对于最后的分割结果精度上提升效果不明显。


    网络结构设计

    Fig.1 Fast-SCNN结构

    图1所示的是Fast-SCNN的网络结构图,如图所示,网络结构包含了四个部分,分别是学习下采样模块,全局特征提取模块,特征融合模块和最后的分类器模块。

    学习下采样模块

            作者阐述,之前的多支路[21,34,17]分割网络都是采取不同的分辨率图像作为输入,深层的网络采用小分辨率的输入来提取全局上下文信息,而浅层网络采用大分辨率图像作为输入来提取边缘信息,作者提出,由于神经网络中最开始的几层都是提取的底层信息(边缘,角落等),因此于其让两个分支分开计算,不如采用学习下采样模块,来让两个分支共享一个浅层模块提取后的特征图。

    Fig.2 Fast-SCNN与其他网络结构对比

            学习下采样模块有三个卷积层,作者在学习下采样模块中仅采用三层来确保低级特征进行有效的共享。第一层是标准的卷积层,另外两层是深度可分离卷积(DSConv),作者强调,尽管DSConv计算速度非常高效,但是由于输入图像只有三个通道因此,DSConv在这里的优势不明显,三层网络步长都为2,后接bn和Relu激活函数,卷积核的大小为3x3,深度卷积和1x1卷积之间的省略了激活函数。

    全局特征提取模块

            全局特征提取器模块是为了捕获全局上下文信息。大多数的两支路方法都是在低分辨率输入图像上进行上下文捕获,而作者提出的方法则是直接在八倍下采样中提取到的特征的基础上进行上下文捕获。其具体的结构如图3所示,作者使用MobileNetV2中的瓶颈残差模块,具体来说,当瓶颈残差模块的输入和输出是一样的时候,作者使用了残差连接。作者的瓶颈残差模块使用了高效的深度可分离卷积,减少了参数量和计算量,。另外,在末尾添加了金字塔池化模块(PPM)[37],以聚合基于不同区域的上下文信息。

    Fig.3

    特征融合模块

            特征融合模块:与ICNet和ContextNet相同的是,作者倾向于简单添加功能以确保效率,特征融合模块的具体细节如图4所示。

    Fig.4

    分类器模块

            分类器模块中,作者使用了两个深度可分离卷积和一个1x1卷积,作者发现在特征融合之后添加几层网络可以提高准确率,分类器的设计细节如表1所示。在训练期间使用Softmax,因为采用了梯度下降的方法。 在推论过程中,由于两个函数都是单调递增的,因此我们可以用argmax代替计算量大的softmax计算。 我们将此选项表示为Fast-SCNN cls(分类)。 另一方面,如果需要基于标准DCNN的概率模型,则使用softmax,表示为Fast-SCNN概率(概率)。


    实验结果

    Fig.5

            图5展示的是Fast-SCNN与其他网络在cityscapes测试集上的精度和推理速度的对比,实验结果可以看出,Fast-SCNN在精度和推理速度上相较于其他的网络有一个很好的平衡。

                作者接下来又实验验证了,对于Fast-SCNN这种轻量化的小网络来说,预训练模型和弱标注训练数据对于最后的精度提升效果不大。作者将Fast-SCNN种的FFM模块替换为了全局池化和分类模块,以此来在ImageNet上对Fast-SCNN进行预训练,结果显示Fast-SCNN在ImageNet交叉验证集上 top-1达到60.71%,top-5达到 83.0% ,预训练后的Fast-SCNN在cityscapes交叉验证集上之比没有预训练的模型高0.53%,可见预训练模型没有带来显著性的提升。作者认为由于Cityscapes的城市道路与ImageNet的分类任务之间的重叠非常有限,因此可以合理的假设,由于两个数据集的数据分布相差比较大,所以Fast-SCNN很难从预训练模型中获益(这里我认为还有一个可能的原因就是因为模型本身较小,针对于特定的数据集比较容易训练,也就是对于数据的分布学习能力比较快速,彻底,因此是否有预训练模型意义不大)。作者又使用粗略训练数据(使用或不使用ImageNet)训练的Fast-SCNN,彼此之间的性能相似(这里指的是使用或者不使用ImageNet预训练模型),并且仅仅比没有使用预训练模型的Fast-SCNN精度稍微提高。 但是由于DCNN是随机初始化的,所以很小的变化并不太说明问题。

    Fig.6

            从图6的结果也可以看出,尽管有预训练模型或者是粗略标注训练的数据能够很快的达到收敛,得到稳定的准确率,但是Fast-SCNN经过多轮的迭代同样可以到达相同水准的准确率,只需要将Fast-SCNN进行多轮次的迭代即可。

    相关文章

      网友评论

          本文标题:多支路轻量化分割模型-Fast-SCNN

          本文链接:https://www.haomeiwen.com/subject/reoofhtx.html