结合多种影像特征与CNN的城市建筑物提取
2020-12-05谢跃辉李百寿刘聪娜
谢跃辉,李百寿,2,刘聪娜
(1.桂林理工大学 测绘地理信息学院,广西 桂林 541004;2.广西空间信息与测绘重点实验室,广西 桂林 541004)
0 引言
城市建筑物信息对城市规划与管理领域有着重要的应用价值。在遥感影像建筑物信息提取方面,产生了诸如建筑物形态学指数、局部结构(边、线和角)等几何约束及视觉机制、感知编组等诸多方法[1-5],通过上述方法可以很清晰地阐释遥感图像建筑物信息提取的全过程。但模型创建过程的复杂度较高,建模的人工成本也较高,有时针对特征选择具有主观性,无法快速选择最优特征,需要进行多次优选,才能发现对提取精度有较大影响的关键特征,且所设计的模型无法应用于城市各种类型的建筑物提取,对不同形状类型、不同语义干扰环境下的建筑物提取精度也会产生不同的影响。
随着卷积神经网络(convolutional neural networks,CNNs)精度和性能的逐步提高,近年逐渐成为国内外图像识别领域人员的关注重点和热点。Long等[6]通过卷积层代替CNNs的全连接层,以端对端的方式直接学习从图像像素到类别标签的映射,提高了图像分类的精度。目前在网络结构[7-9]、分类策略[10-12]方面对标准数据集开展了相关优化研究,调节网络深度和网络结构参数,但对网络输入图像的选择,主要采用原始图像旋转、加噪等预处理,对原图像变换和多特征提取后的重构特征图像对分类结果的影响开展的工作较少。
仅采用原始输入光谱图像无法进一步提高建筑物提取的精度,可以采用多种特征描述作为卷积网络的输入数据,如尺度特征与纹理特征、几何形状特征等。多特征可以增加地物类别之间的可分离性,如纹理特征的使用会产生理想的分类效果[13-16]。以局部二值模式(local binary patterns,LBP)特征为例,在一些研究中,纹理信息对提高提取精度至少有2%左右的帮助[15]。又如LBP纹理特征与光谱信息结合,比仅采用光谱信息,相对精度提高了6%~9%[16]。在多尺度特征提取方法中,高斯金字塔是一种常用且有效的特征提取方法[17-20],一些研究结果显示也提高了分类精度。如周全等[17]通过引入高斯金字塔获取多尺度遥感云图,在采用相同算法与分类器的条件下,高斯金字塔的引入使得分类精度提高了2.73%。在车牌照图像提取方面,刘军等[19]结合高斯金字塔与梯度方向直方图的方法提取车牌汉字特征,在相同的样本空间下,高斯金字塔的引入与传统的K-L变换及HOG变换在精度上分别有着33.7%和19.4%的提升。根据上述规律,本文首先利用LBP纹理结合高斯金字塔尺度模型,获取高分影像纹理特征以及多尺度特征,并以此为数据源构建卷积网络深度学习样本集,结合SegNet卷积网络对多特征影像进行分类,采用条件随机场模型对分类结果进行优化。
1 多种影像特征与卷积网络结合的城市建筑物提取方法
1.1 方法步骤与原理
首先,通过LBP对高分影像进行纹理特征提取,并选取适当尺度参数由高斯金字塔获取影像多尺度特征,在此基础上同原始影像共同构建样本数据集,增强网络对于建筑物多尺度信息和纹理特征信息利用;其次,对含有影像光谱、纹理及多尺度等特征的数据集进行卷积、池化等前向传播计算,得到影像特征图;然后,将影像特征图进行反向解码,通过重复使用最大池化索引,改善边界划定,减少训练参数,并通过标签数据反向传播算法更新网络权重;接着,将特征向量输入Softmax进行逐像素分类,输出每个像素隶属于各个类别的概率,完成建筑物粗提取;最后,通过条件随机场(conditional random field,CRF)优化边界信息,完成建筑物的精细轮廓边界提取。本文方法的具体流程如图1所示。
图1 方法步骤原理框图
1.2 LBP纹理与多尺度特征提取
将待处理像素与周围8个像素进行比较,若像素值比中心像素值大,赋值为1;若像素值比中心像素值小,则赋值为0,获取二进制序列。随后对获取的二进制序列不断地进行旋转,获得LBP旋转不变模式特征,其计算如式(1)所示。
(1)
式中:(xc,yc)为中心像素;ic为灰度值;ip为相邻像素的灰度值;s为符号函数,采用式(2)计算。
(2)
高斯金字塔尺度-光谱特征生成过程包括:对原始光谱影像进行高斯平滑滤波,平滑后对输出影像进行降采样处理,获得设定尺度因子下的尺度-光谱特征。其中尺度因子有着重要作用,决定了尺度-光谱特征影像的平滑程度。
高斯金字塔多尺度特征提取方法如下:设原始二维影像表示为I(x,y),高斯函数表示为G(x,y,σ),通过式(3)、式(4)构造高斯尺度空间L(x,y,σ)计算式。
L(x,y,σ)=G(x,y,σ)⊗I(x,y)
(3)
(4)
式中:(x,y)为空间坐标;⊗为卷积运算符;σ为尺度因子。
1.3 SegNet网络模型与预测结果优化
SegNet网络模型在每一个卷积层之后都紧跟一个批归一化(batch normalization,BN)层。解码器部分同FCN一样,舍弃全连接层,取而代之的为一系列的卷积操作,并且每个编码器层都与相应的解码器层对应,实现一个端到端架构。在池化过程中引入最大池化索引信息,保存了最大特征值所在的位置。在解码过程中,通过池化索引来实现非线性的上采样,使得边界信息得以保存。在解码过程中重复使用最大池化索引,不仅改善了边界的划定,同时也减少了进行端对端训练的参数,是拥有较少参数的轻量级网络,有着存储效率高和速度快等优点,非常适合本文的研究。
在网络输出分类后,采用条件随机场对网络输出进行优化。条件随机场是由各像素之间的相关关系作为边构成,其中每个像素节点i具有对应的类别标签xi,以及特征映射值yi。其满足吉布斯分布,见式(5)。
(5)
式中:E(x|I)为能量函数,如式(6)所示。
(6)
(7)
2 方法实验设计与结果
2.1 实验设计
为深入研究多种影像特征及卷积神经网络对城市建筑物提取的影响,本文分别从纹理因素、尺度因素以及卷积网络优化因素(原始影像张数、样本个数、迭代次数)对实验进行设计。以实验1作为基础实验结果,并在此基础上依次加入纹理特征或多尺度特征,构建实验2与实验5的设计内容。实验3、4、6分别考虑网络优化因素的影响,用于调节网络模型。具体实验参数设计如表1所示。
表1 实验参数设计
为探究模型对相同数据源下不同研究区域的泛化能力以及同其他方法间的性能比较,本文以实验6训练所得模型对不同研究区进行预测,并同其他方法进行对比分析。同时,为进一步探究本文所提出方法对不同数据源是否具有较好的泛化能力,对武汉大学的国内航空影像也进行预测分析。
2.2 软硬件环境
实验运行环境为Win7 64位操作系统,以TensorFlow+Keras开源深度学习框架作为开发平台,利用基于Python的cv2、matplotlib等第三方库进行数据预处理及绘制等操作。硬件环境为因特尔Core i7-7700 K处理器,搭配NVIDIA GeForce GTX 1070显卡,8 GB显存,CUDA 9.0加速计算。
2.3 实验数据选择
图2 训练与测试影像选取
本文采用的数据同文献[21]中使用的马萨诸塞州航空影像建筑物数据集(含地表真实标签数据)。该数据集为1 m高分辨率影像,对高分辨率遥感影像来说是具有代表性和典型性的,对于国内的高分航空航天遥感影像具有启发意义,且该数据集数据量较丰富,比较适合做探究。该数据集包括波士顿地区的151幅航空影像,每幅影像大小为1 500像素×1 500像素,覆盖面积2.25 km2。影像集中小型建筑物边长为20~30像素,大型建筑物长为150~250像素,宽为70~150像素。实验1~实验5从训练图像中抽取1张影像进行预处理,如图2(a)所示。实验6在基础实验上增加分类训练图像数量到8张。测试集影像为3张,分别为不同区域下的马萨诸塞州航空影像建筑物数据,图2(b)为其中一幅。
1)纹理与多尺度特征提取。考虑到基于复杂场景下的建筑物往往存在大量的阴影,植被、复杂屋顶材料等因素交杂在一起,单独依靠影像的光谱特征、空间特征进行建筑物提取,效果往往不是很理想,本文方法利用LBP算法引入基础视觉中的纹理特征,将提取的纹理特征加入训练集参与模型训练。同时基于高斯金字塔模型对原始训练影像进行多尺度光谱特征提取,其中尺度因子平滑系数设置为0.5,获取750×750和375×375 2个尺度的尺度-光谱特征图像,如图3所示。
图3 多特征影像
2)训练样本集制作。对样本尺寸与建筑物尺寸关系研究后发现,利用256像素×256像素的尺寸既满足建筑物识别提取分辨率的需要,又可满足本实验硬件环境下计算效率需求,因此采用OpenCV对原始训练影像随机裁剪256像素×256像素大小样本,形成样本集。同时采用多角度旋转(90°、180°、270°)、镜像变换、亮度调整以及添加噪声点等虚拟样本增强操作扩充样本集,样本集中训练集和验证集样本数目比例设计为3∶1,测试集选取马萨诸塞州航空影像建筑物数据集中未参与模型训练的3幅原始1 500像素×1 500像素大小的不同区域影像数据进行预测,以此来探究模型的泛化能力。
图4为光谱、纹理和光谱-多尺度特征图像及其标签,图4(a)~图4(c)为光谱、光谱-尺度图像标签,图4(d)为纹理图像标签。
图4 训练样本及其标签
2.4 模型训练与Softmax分类
网络由13个卷积层和5个池化层组成,卷积网络采用大尺寸的卷积核可以获得更大的感受野,但同时也增加了参数量。为获得最优感受野,本文将卷积核大小分为3×3、5×5、7×7 3种情况,在相同环境下进行实验分析。通过对每种情况进行3次实验,获取相对应的精度及所需时间,求取3次平均值作为最终结果,如表2所示。实验表明,以3×3作为感受野能获得较好召回率和F1评分,而时间成本上却有着大幅度的缩减。因此,本文选择以3×3作为本实验的最优感受野进行实验分析。
表2 不同卷积核对比
(8)
式中:yi为第i个像素的真实值,yi=0表示该像素属于背景区域,yi=1则表示该像素为建筑物区域;ai为预测值,取值范围为(0,1)内,ai越趋近于1,则该像素属于建筑物的概率就越高。训练过程采用随机梯度下降(SGD)不断调整网络的权重参数,通过反向传播使得损失函数L达到最小。文中使用来自Vggnet的所有预先训练的卷积层权重作为预先训练的权重,其中学习率初始值为0.01,受限于计算机资源批次大小设置为4。在模型训练之前,数据标准化是必要的。本实验采用0均值归一化方法将RGB影像[0,255]归一化到[0,1],使得网络输入限制在一定范围内,避免了训练样本差异造成的训练过程不收敛,加速梯度下降优化过程。以实验6为例,迭代20次之后,模型的损失率随着训练数据的损失率的减少而逐渐收敛。
Softmax分类器采用逐像素分类,通过分类概率最大值确定最终类别结果。采用Softmax分类器对实验1~实验6进行建筑物分类提取,同时采用CRF法对实验6分类结果进行优化。
为探究模型对相同数据源下不同研究区域的泛化能力以及同其他方法间的性能比较,本文以实验6训练所得模型对不同研究区进行预测,并同其他方法进行对比分析。同时,为进一步探究本文所提出方法对不同数据源是否具有较好的泛化能力,对武汉大学的国内航空影像也进行预测分析。
2.5 提取结果误差分析与精度评价
1)提取结果误差分布分析。实验1~实验6提取结果如图5(a)~图5(f)所示;采用条件随机场优化结果如图6所示;不同方法下马萨诸塞州航空影像建筑物数据集不同研究区的提取结果如图7所示;不同数据源下提取结果如图8所示。利用ENVI软件结合已知建筑物标签样本,对建筑物提取结果中的误差分布进行标记,红色标记为错分像元,蓝色标记为漏分像元,绿色显示为正确提取像元。
多特征因素影响分析。图5(a)显示加入多特征前提取结果包括很多错分和漏分像元;加入LBP纹理特征,建筑物提取精度有着显著提高,错分像元减少。在对比纹理加入前后影像发现,加入的纹理特征对于剔除与建筑物屋顶光谱产生混淆的水泥地面具有很好的作用,容易从水泥地面中提取出建筑物,如图5(b)所示。在纹理特征的基础上加入多尺度特征提取结果误差分布如图5(e)所示。
图5 不同实验设计的提取结果
网络参数对提取结果的影响。为获取最优网络参数,分别从迭代次数、样本数量以及原始影像张数入手。由图5中的(c)可以看到,在10 000个样本数量、迭代次数为10的条件下,分割结果中存在大量的漏分像元;迭代次数增加有利于提高模型对于建筑物深层特征的学习效果,减少漏分现象(图5(d));样本数量的增加可以增加可学习的特征,进而区分与背景易混淆的小尺度建筑物,进一步减少漏分像元,提取结果如图5(e)、图5(f)所示。
对图5(a)~图5(f)综合分析发现,红色错分像元主要分布在建筑物的边缘。建筑物被植被遮挡,较小的卷积核(3×3的卷积核)降低了网络的感受视野,对像元邻域信息利用不足是错分像元产生的主要原因。采用条件随机场优化结果如图6所示,与图5相比,增加了正确提取的建筑物像元个数。
路基路面防水处理在设计阶段和施工阶段需要遵循的事项如下:(1)在设计阶段,要降低或是阻隔可能影响公路路基路面整体稳定性的地下水,必要情况下,可疏干地下水,将地下水引流至路基路面施工范围以外,对于影响路基路面整体稳定性的地面水,采取同样的引流方式,可适当拦截,防止地面水沿公路路面下渗;(2)在施工阶段中,要对路基路面防水设计进行核对,根据施工现场实际情况对设计方案进行必要的修改或是完善,确保后期施工稳妥。在路基施工现场要预先设置临时排水渠道。同时在后期的路基养护中要对排水设施进行定期检修,以保证沉降在路基路面的水能够及时被导出并排除[1]。
不同方法下不同研究区间的对比实验。为探究模型对相同数据源下不同研究区域的泛化能力,本文以实验6训练所得模型对不同研究区进行预测,并同其他方法进行对比分析;通过与Lenet神经网络以及传统监督分类方法进行对比实验,验证本文提出方法的可行性。实验结果如图7所示。对比本文模型在马萨诸塞州3个不同区域的提取结果可以看出,相对于图7(a)区域1来说,图7(b)区域2与图7(c)区域3存在较多的漏分,其原因主要在于,图7(b)区域2与图7(c)区域3位于乡村与郊区地区,植被茂密,存在较多的建筑物被植被覆盖以及阴影的遮挡现象,导致漏分像元较多;另一方面由于个别标签中存在的建筑物在实际影像中未有与之对应的建筑物,而造成漏分,进而影响整体的精确率。
图6 实验6+CRF提取结果
图7 不同方法下不同研究区提取结果
将本文方法与Lenet方法及传统监督分类方法中的最大似然法进行对比可以发现,在相同数据、相同实验环境下,只存在模型差异的2种卷积神经网络方法都能比较好地区分地物,进而更好地提取建筑物。而相对于Lenet模型而言,本文所使用的SegNet模型对更为复杂的区域的提取效果优于Lenet模型,如区域1,而对于道路与建筑物的区分度更强,如区域3。对照最大似然法提取结果可以直观看出,相对于卷积神经网络算法,最大似然分类算法很难有效地区分出建筑物与道路,造成大量的错分。
不同数据源下模型泛化能力探究。为进一步探究本文所提出方法对不同数据源是否具有较好的泛化能力,以实验6训练所得模型对武汉大学的航空影像进行预测,预测结果如图8所示。从图中可清晰地看出,针对国内建筑物提取,直接利用已有的训练模型进行提取效果不是很理想,存在比较多的漏分和错分现象。其中,漏分部分主要因素是建筑物屋顶被绿色植被覆盖,以及一些建筑物差异性较大;而错分部分主要来源于建筑物周围阴影的影响,以及河流中的船只被错分成建筑物。
图8 不同数据源下提取结果
2)精度评价。为进一步对本文所提方法的有效性进行验证,对分类结果作进一步分析,以精确率、召回率和F1评分3个指标来定量评价模型预测的精度。
加入特征后的精度情况。从表3中对比实验1与实验2的定量精度评价指标可以看出,将纹理特征加入模型进行训练确实能提高预测精度,精确率P、召回率R以及F1评分3个指标分别提升了7.58%、2.83%和4.81%。对比实验2和实验5可以发现,采用高斯影像金字塔构建多尺度特征对模型的精度产生影响,其中精确率和F1评分分别提升了0.63%和0.17%。对比实验1与实验5可以发现,基于纹理信息和多尺度特征增强下的建筑物提取精度取得了进一步提升,3个指标分别提高了8.01%、2.71%和4.98%。同时也显示了2种特征对提升分类精度贡献不同:提取大小2个尺度的特征光谱,分别表征高分影像的光谱多尺度特征,与纹理特征相比,对卷积网络深度学习分类结果精度影响较小,对精度贡献较小。
表3 不同组实验精度对比 %
网络优化后的精度情况。从实验3与实验4看,循环训练的次数在一定范围上对模型训练的精度是有益的,不管是精确率、召回率,还是F1评分都有大幅度的提升,分别为4.10%、9.96%和9.64%。对于实验4与实验5来说,训练样本的数目对模型的预测精度起到了决定作用,随着样本数据的增加,模型也得到质的提升,3个指标分别提高了4.79%、17.31%和13.81%。在实验6中,加入另外7张1 500像素×1 500像素的建筑物数据集,并通过LBP提取相应的纹理特征,以及多尺度特征的提取,以此分割成100 000个样本数据集进行模型训练,精确率达到了80.35%,表明增加样本数据的数量及特征对模型精度的提高有着很好的促进作用。
条件随机场优化后的精确率相较于优化前有着大幅度的提升,精确率增加了12.38%, CRF对于边缘正确提取精度有着较好的效果,但召回率下降了2.40%,F1评分整体增加了3.16%。
不同方法下不同研究区间的精度情况。表4列出了本文方法、Lenet方法以及传统监督分类的最大似然法对马萨诸塞州区域1、区域2与区域3(依次从上到下顺序)共3个不同区域进行的定量分析。可以看出,对于精确率而言,存在一定的跳跃,即漏分像元数量存在较大差异。其原因与“提取结果误差分布分析”中对应部分相吻合。本文方法对区域1的精确率最高,达到80.35%。对于召回率以及F1评分而言,均较为稳定,介于66%~77%之间。对比本文方法与其他2种方法可以看出,本文方法与Lenet卷积神经网络方法相对于传统的监督分类方法,能更好地区分不同地物,具体体现在召回率上,最大似然法的召回率最高只达到26.40%,而卷积神经网络方法平均有70%以上的召回率。而对比同为卷积神经网络且在完全相同的数据下的本文方法与Lenet卷积神经网络方法,在精确率上,本文方法3个区域的平均精确率比Lenet方法高1.36%,而在平均召回率上,仅有着0.19%的微小差距。
表4 不同方法下不同研究区域实验精度表 %
不同数据源下提取精度情况。从表5武汉大学国内航空数据精度上可以看出,直接将本文训练所得模型应用于不同数据源航空数据,在精确率、召回率以及F1评分上也有着相对较好的精度,分别为43.00%、68.52%以及52.84%。
表5 不同数据源实验精度表 %
3 结束语
本文通过建筑物提取理论和实验研究提出一种基于多种特征与卷积神经网络的城市建筑物提取方法,从数据增强的角度出发,研究了纹理特征和尺度特征对CNN模型分类精度的影响研究。采用LBP和高斯金字塔来分别获取高分影像的纹理特征和多尺度特征,并将其输入卷积神经网络中参与建筑物提取。结果表明,纹理、尺度、光谱等多特征SegNet网络模型方法实现的准确率、召回率、F1评分分别为92.73%、65.39%、76.70%。将纹理特征和尺度特加入模型进行训练可以提高预测精度,精确率、召回率以及F1评分3个指标分别提升了8.01%、2.71%和4.98%。与纹理特征相比,尺度特征对精度贡献较小,其中精确率和F1评分分别提高了0.63%和0.17%。网络优化结果表明:增加循环训练次数对模型训练的精度是有益的,不管是精确率、召回率还是F1评分都有着大幅度的提升,分别为4.10%、9.96%和9.64%;训练样本的数目对模型的预测精度起到了决定作用,本文研究发现随着样本数据的增加,3个指标分别提高了4.79%、17.31%和13.81%。条件随机场优化后的精确率相较于优化前有着大幅度的提升,增加了正确提取建筑物像元的个数,精确率增加了12.38%, CRF对于边缘正确提取精度有着较好的效果,但召回率下降了2.40%,F1评分总体增加了3.16%。
通过对比不同方法下不同研究区间的精度情况表明,基于本文方法所获取的模型对相同数据源下不同研究区域的泛化能力较好,平均精确率68%以上,平均召回率在72%左右,相对于Lenet卷积神经网络精确率有着1.36%的提升;而对于传统监督分类算法在平均精确率、召回率以及F1评分上,分别有着6.96%、51.69%和39.33%的提高。
对比不同数据源下提取精度情况表明,直接将本文训练所得模型应用于不同数据源航空数据在精确率、召回率以及F1评分上也有着相对较好的精度,分别为43%、68.52%以及52.84%,但与直接应用于相同数据源下的精度还存在较大上升空间。
本文使用马萨诸塞州1 m高分辨率影像建筑物数据集,对高分辨率航空航天影像而言具有代表性和典型性,对于国内的高分航空航天遥感影像具有一定的启发意义。为了进一步研究提升结合多种特征和CNN方法的精度,将来可采用其他高分遥感标准化数据集做进一步处理研究。针对不同数据源分类精度有待提高的问题,可在已有的基础上通过迁移学习做进一步的研究,同时开展更多特征融入卷积网络的实验研究,例如形状特征如何融入,目前尚未有很好的解决思路和研究。此外,研究中也发现通过条件随机场方法对预测结果做进一步精细化处理,可以提高建筑物提取的精确率和F1评分指标值。