【论文阅读】SPMF-Net: Weakly Supervised Building Segmentation...

文章目录

  • 摘要
  • 2. Methodology
    • 2.1 Weak Supervision Label Generation
      • 2.1.1 Superpixel Pooling
      • 2.1.2 Multi-Scale Feature Fusion
      • 2.1.3. CAM Calculation
    • 2.2 Building Extraction
  • 3 Results and Analysis
    • 3.1. Dataset
    • 3.2 Data Processing
    • 3.3 Parameter Settings
    • 3.4 Evaluation Metrics and Comparisons
    • 3.5 Quantitative Analysis
    • 3.6 Quantitative Analysis
  • 我的总结&感想


本文原文链接

原文:Chen, J., He, F., Zhang, Y., Sun, G., & Deng, M. (2020). SPMF-Net: Weakly Supervised Building Segmentation by Combining Superpixel Pooling and Multi-Scale Feature Fusion. Remote Sensing, 12(6), 1049.

摘要

像素级标注的缺乏限制了基于深度学习的建筑物语义分割的实用性。而基于图像级标注的弱监督语义分割导致目标区域不完整,边界信息缺失。本文提出了一种用于建筑物检测的弱监督语义分割方法。该方法采用超像素池和多尺度特征融合结构相结合的分类网络,以图像级标签作为监督信息。该方法的主要优点是能够提高被检测建筑物的完整性和边界精度。我们的方法在两个二维语义标注数据集上取得了很好的结果,其性能优于一大批旗鼓相当的弱监督方法,接近于强监督方法的结果。

2. Methodology

本文方法由两部分组成:

  • 基于建筑物图像的图像级分类标号和相应的超像素图,利用DCNN分类网络生成像素级伪标号;
  • 利用生成的像素级伪标签,训练基于DCNN的分割模型来提取建筑物。

2.1 Weak Supervision Label Generation

【论文阅读】SPMF-Net: Weakly Supervised Building Segmentation..._第1张图片
弱监督标签生成网络由下采样模块、多尺度上采样模块、超像素池模块和分类器组成,其中下采样模块骨干网络为VGG16。

2.1.1 Superpixel Pooling

附另一篇超像素池化的文章,里面有写清楚超像素池化操作的前向与反向传播。

文章标题:Efficient semantic image segmentation with superpixel pooling


超像素池化层的原理类似于平均池化层,即局部区域的特征通过平均池化层聚合:
在这里插入图片描述

  • Z ∈ R W ∗ H ∗ Z Z \in R^{W*H*Z} ZRWHZ表示特征图,W、H、C分别表示长、宽和通道数;
  • P ∈ A W ∗ H P \in A^{W*H} PAWH表示超像素图,H、C分别表示长和宽; A = [ 1 , M ] A = [1,M] A=[1,M]超像素的标签; P i = M P_{i}= M Pi=M表示像素 i i i属于第 M t h M_{th} Mth个超像素;
  • O ∈ R M ∗ C O \in R^{M*C} ORMC表示超像素池化输出, M M M表示超像素的个数; C C C表示通道数;
  • a v e r a g e { . } average\{.\} average{.}表示平均池化操作;

上述公式特征图对映关系由下图所示:
【论文阅读】SPMF-Net: Weakly Supervised Building Segmentation..._第2张图片
最后,超像素池化在反向传播中公式如下:
【论文阅读】SPMF-Net: Weakly Supervised Building Segmentation..._第3张图片

  • N ( P i ) N(P_{i}) N(Pi)表示第M个超像素的像素点个数;

与传统的池化层不同,超像素池化层没有确定的矩形池化操作范围,而是由超像素形状确定的不规则区域。换句话说,超像素池化层是在单个超像素边界区域约束下的池化操作。超像素包含形状先验信息,这有助于细化对象边界。

本文采用简单线性迭代聚类算法(SLIC)生成建筑物图像的超像素映射。它首先将图像从RGB颜色空间转换到CIELAB颜色空间,然后通过SLIC生成不同大小的均匀区域。

2.1.2 Multi-Scale Feature Fusion

简单来说就是重复了U-net中连接(concatenate)编码器与译码器中对映尺寸的特征图的结构:

在这里插入图片描述

  • V 1 ∈ R a V_{1} \in R^{a} V1Ra, V 2 ∈ R b V_{2} \in R^{b} V2Rb V 1 V_{1} V1表示编码器输出特征图; V 2 V_{2} V2表示译码器输出特征图;

2.1.3. CAM Calculation

超像素池化层后面是一个分类器。分类器由全局平均池化层和全连接层组成。该分类器通过全局平均池化将超像素池化的输出M×C矩阵转化为1×C向量,从而平均每个超像素。每个超像素通过超像素池化层分配一个特征向量。该矢量与分类器中的全连接层相连进行分类。由于该方法只提供图像级的构建和背景标签,因此SPMF网络的优化利用二分类损失函数,且按公式(2)计算并反向传播。

用图像级标签训练分类网络的目的是用CAM生成像素级的标签,而不是对图像进行分类。CAM为每个像素分配一个激活分数。与原CAM不同的是,该策略为单个超像素分配一个激活分数。这样就可以生成保存的建筑物的形状和边界的物体激活热图。该结构结合了多分辨率特征图下的细节信息,保留了建筑物的边界信息,具有很高的可信度,可以得到许多精确的建筑物区域。

生成的热图表明,热值越高,建筑面积的可能性就越大。我们将热图的像素值标准化。热值大于0.5的像素被视为建筑物,低于该阈值的像素被视为其他类别。

因此,可以得到建筑物的伪标签作为训练数据进行网络分割提取建筑物。

2.2 Building Extraction

本文采用Deeplabv3+作为骨干网络,以Xception为主干,以交叉熵损失函数为目标函数。将损失函数L用于网络训练中,定量地评价实际值 y i y^{i} yi和预测值 y i ′ y^{i'} yi之间的差异。 i = 1 , : , n i=1,:,n i=1n,其中 n n n表示训练数据的个数。网络训练的损失函数表示为:
在这里插入图片描述
损失函数优化表示为:
在这里插入图片描述

  • I w I_{w} Iw表示2.1中生成的伪标签;
    吐槽一下,原文公式都打漏了,怎么过审的

3 Results and Analysis

3.1. Dataset

Potsdam and Vaihingen dataset:

  • provided by the International Society for Photogrammetry and Remote Sensing
    (ISPRS) Commission II/4
  • 由四波段图像数据(近红外、红色、绿色、蓝色)和相应的数字表面模型(DSM)数据组成
  • Potsdam 包含38个大小相同的patch,为6000×6000像素
  • Vaihingen 包含33个大小相同的patch
  • 每个patch分为六类,即不透水表面、建筑物、低植被、树木、汽车和杂物/背景

3.2 Data Processing

  • 20个patch作为训练数据,4个patch作为验证数据,14个patch作为测试数据(the Potsdam dataset);
  • 7个patch作为训练数据,4个patch作为验证数据,12个patch作为测试数据( the Vaihingen dataset);
  • 在滑动步长为128的情况下,将训练数据中的块裁剪成256×256的图像块;
  • 对所有图像旋转90°、180°和270°,加镜像翻转;
  • 处理后的Potsdam数据集包含62437个训练块和12488个验证块,而Vaihingen数据集包含24793个训练块和8811个验证块。
  • 训练数据中具有建筑物大于50%的像素比率的图被命名为建筑类;并且没有任何建筑像素的图被命名为另一类;具有建筑物小于50%的像素比率的图被舍弃。因此,处理后的Potsdam类数据集包含17863个建筑物图和31271个其他类图,而Vaihingen数据集包含5056个建筑物图和3944个其他类图。
  • 使用SLIC,每个图被分割成64个超像素。

3.3 Parameter Settings

所有实验都在Pytorch框架版本0.4.1上进行。对提出的弱监督信息生成网络进行了10次迭代训练。batch大小为10,学习率设置为0.001。网络采用随机梯度下降法进行优化,动量为0.9,权值衰减率为0.0005。
所采用的分割网络训练迭代10次。batch为8,优化器为Adam。初始学习率为0.001,每跑完一个epoch学习率降低到原来的1/10。
其他用于比较的方法参数设定保留原文中设定。使用Deeplabv3+模型作为分割网络。所有的实验都是在NVIDIA 1080Ti GPU,i7-9700k CPU,16Gb内存的计算机上进行的

3.4 Evaluation Metrics and Comparisons

  • 采用OA(总体准确度)、DA(检测准确度)、FAR(虚警率)和mIOU(联合平均交集)作为评价指标
  • 在我们的实验中,我们使用了三种弱监督语义切分模型来与提出的方法进行比较:(1)基于CAM的弱监督方法,这是一种简单的自顶向下方法模型,在许多任务中被用作基线;(2)WILDCAT方法,这是一种高效的自顶向下方法模型,改进了基于CAM方法对不同对象特征的关注;(3)超像素池网络(superpix pooling network,SPN),在CAM方法的基础上增加了一个超级像素池层。
  • 此外,为了验证SPMF-Net多尺度特征融合结构的有效性,在仅嵌入编码器的SPMF-net v1上进行了消融实验。此外,采用了完全监督的方法Deeplabv3+验证了方法的可行性。

3.5 Quantitative Analysis

【论文阅读】SPMF-Net: Weakly Supervised Building Segmentation..._第4张图片

3.6 Quantitative Analysis

【论文阅读】SPMF-Net: Weakly Supervised Building Segmentation..._第5张图片
(a) 和(e)分别是输入图像和地面真值;(b)和(f)是CAM热图及其生成的伪标签图;(c)和(g)是WILDCAT热图及其生成的伪标签图;(d)和(h)是 SPMF-Net网络热图及其生成的伪标签图。(a–d)来自Potsdam数据集,(e–f)来自Vaihingen数据集。建筑物用黑色表示,其他类别用白色表示

【论文阅读】SPMF-Net: Weakly Supervised Building Segmentation..._第6张图片
在Potsdam数据集(第一列和第二列)和Vaihingen数据集(第三列和第四列)上,我们的方法与其他方法的定性结果比较。
(a) 是原始遥感影像(b)是CAM的结果(c)是通配符的结果(d) 是SPN的结果;(e) 是SPMF-Net的结果(f)是SPMF网的结果(g) 是Deeplabv3+的结果(h)是基本事实。建筑物以黑色显示,其他类以白色显示

我的总结&感想

本文最大的创新点在我看来有二:

  1. 利用超像素池化层过分割类似U-net网络的输出特征图,从而保留边界信息;其中,超像素最为先验知识或者说强约束条件,能够弥补DCNN做分割边界细节不够好的问题。
  2. 采用两个网络,一个网络利用CAM对每个超像素求得激活分,从而生成伪标签图;另一个网络利用伪标签图训练强监督分割模型。

效果仅比强监督网络差几个点,不知道是不是因为任务较简单的原因,即仅做二分类建筑物识别,且建筑物边缘较平整,换成做多分类或者识别边缘不平整的类别,不知道效果怎么样…

你可能感兴趣的:(语义分割)