基于改进U-Net 网络的城市道路提取方法研究*

2023-07-11 07:30谢天怡梁曦文
计算机与数字工程 2023年3期
关键词:残差卷积道路

谢天怡 梁曦文 徐 昇

(南京林业大学信息科学技术学院 南京 210037)

1 引言

城市道路作为现代城市运输系统中不可或缺的角色,作用于城市规划、车辆导航、防灾减灾等多个领域。遥感图像是城市道路信息的主要来源之一,空间分辨率越来越高的遥感图像为获取城市道路信息提供了一种快捷且经济的途径。基于高分辨率遥感图像的道路信息提取对优化道路运行管理机制、城市路网应急管理服务等方面有十分重要的意义。遥感图像的道路信息提取方法可分为传统方法和深度学习方法[1]。常见的传统方法有模板匹配方法[2~5]、知识驱动方法[6~8]、面向对象方法[9~10]。而深度学习方法是现代研究中常用的道路提取方法,在国内外专家的探索中,常见的方法有VGG模型、全卷积神经网络(FCN)[11]、DenseNet 网络结构[12]、U 型结构的网络结构(U-Net)[13]等。VGG 模型增加了网络的深度和减小了卷积核的尺度,验证了小尺寸的卷积核有着较大的优势;缺点是耗费更多计算资源,并且使用了更多的参数,导致更多的内存占用(140M)。全卷积神经网络(FCN)用卷积层替换了全连接层,不但更好地综合了全图信息而且提升了分割效率;缺点是训练比较麻烦,得到的结果不精细,对图像的细节不够敏感。DenseNet网络结构构建了从局部识别到全局感知的道路提取模块,虽然可以很好地提高无遮挡道路的识别精度,但对于有着复杂背景下的道路区域识别效果较差。U 型结构的网络结构(U-Net)在生物医学图像分割中有很好的表现,数据增强使得只需很少的带标注数据,训练时间短,是比较早的使用多尺度特征进行语义分割任务的算法之一;缺点是有效卷积增加了模型设计的难度和普适性等。

针对传统道路提取方法效率低等问题,本文运用现有的PyTorch 深度学习框架,针对高分辨率遥感图像城市道路网提取中,高分辨率图像地物信息丰富、道路背景杂乱等问题,在原适用于医学图像分割的U-Net 模型基础上进行改进。通过跨层连接操作将残差模块的输入和输出进行简单的叠加求和,增加了反向传播效率从而缓解梯度趋近于零的问题。使新模型能够在弥补U-Net 模型增加深度时产生的梯度弥散问题的同时,推动图像的精细化分割,提升网络计算效率。同时在两个不同的数据集上对改进模型进行测试实验,以验证本文方法的性能,并与其他算法进行了比较。

2 U-Net+ResNet50网络结构设计

常用的CNN 方法[14]处理高分辨率遥感图像地物信息复杂精细,并且采用U-Net模型可以扩充层数增大感受野,但是简单的增加网络模型深度效果并不是很理想,不仅会出现梯度更新失败,还会给模型训练增加难度。针对于此,本文在卷积神经网络(CNN)的基础上选用U-Net 模型进行改进,使用ResNet50残差模块替换原模型的卷积部分,在增大原始网络感受野的同时增加网络的非线性拟合能力,更好地应用于图像语义分割。

2.1 相关技术

2.1.1 U-Net模型

U-Net 模型是由Ronneberger 等在2015 年 基于FCN 模型的基础上提出的一种呈对称的U 型结构的网络结构,其结构图呈现U字形。其中左侧的编码器是由VGG16网络构成,右侧的解码器部分由8层卷积层整合特征信息,对应编码器中的下采样操作,解码器阶段结束每次的上采样运算后都能够在通道维度上链接到编码器阶段产生的特征图,从而实现精密分割提高准确率。目前,U-Net 模型中的激活函数常用的是ReLu 函数,主要作用在隐层神经元输出方面。此模型最初应用于医学图像分割,对于医学影像中小样本数据的训练效果较好。除此之外在网络训练过程中U-Net 模型针对类似生物细胞图像的提取目标时,添加交叉熵损失函数来弥补训练数据集中每个类别像素的出现频率。U-Net 模型对于高分辨率的图像分割效果较好,所以本文将其应用到高分辨率的遥感图像道路网提取中。

2.1.2 ResNet50网络

本文的主干网络选用的是ResNet50 网络,包含了49个卷积层和1个全连接层,按顺序可以划分为5 个阶段:stage1、stage2、stage3、stage4 和stage5。如图1 所示,其中CONV 为卷积层所处阶段为stage1,在这一阶段对应有批量正则化处理、激活函数以及最大池化操作[15]。Stage2至stage5代表残差块,每块中又分别由3、4、6、3小块组成。

图1 ResNet50网络结构图

2.2 U-Net+ResNet50网络结构设计

本文的研究对象为高分辨率遥感图像,这有可能会导致出现分辨率过高使得无关背景信息过多以及其他干扰问题。而传统的U-Net 模型在处理一些较大数据集或一些特征复杂度较高的图像时,解码部分和编码部分不能很好地提取图像细节特征。所以本文引入的残差网络不仅能保证自身最优性能,还在此基础上不断地加深网络层数,在不会牺牲准确率的前提下,达到学习更隐秘特征的目的。其次,残差连接还能够有效解决在U-Net模型中增加模型深度时的梯度弥散问题。除此之外,残差连接能在模型反向传播时让梯度更快地传播到浅层部分,减少过拟合情况,在不额外增加多种参数的情况下保证较小的网络内存消耗,较大提升了网络的计算效率。所以本文在原始U-Net模型上,选用较为成熟的ResNet50 替换原始的卷积结构。该改进结构能够使网络模型更加容易优化,提取的特征更抽象且更具有语义信息,能够提高网络模型的泛化能力[16],旨在推动图像的精细化分割,满足网络结构的设计原则。

改进后的网络模型结构如图2 所示,整体的结构仍然是U 型结构,同基础的U-Net 模型一样,左边为编码器部分,右边为解码器部分。其中编码器部分采用了ResNet50 残差模块替代原始U-Net 模型中的后两层卷积结构。在横向和竖向方向上添加了跨层跳跃连接,增强了语义表征能力。

图2 U-Net+ResNet50网络结构示意图

上述的一个残差块,具体如图3 所示。图3 包含3 个卷积层,其中第一个1×1 的卷积起到了通道降维的作用[17]。然后再通过1×1卷积恢复,通过残差映射的方式分别计算最后叠加作为该残差块的输出。这样做可以减少计算时间和参数量[18],保证每个卷积层提取的特征能够被充分利用。

图3 残差块示意图

图中,x 为上一层的输出;y 是经过残差块处理得到的结果。公式为

模型中运用的ReLU函数是目前应用最广泛的激活函数。相较于其他激活函数,该函数有着更快的收敛速度,因而能更好地解决梯度消失问题并降低网络计算复杂度。其函数公式可以表示为

2.3 损失函数设计

损失函数[19]能够比较模型网络预测结果和真实数据间的差异大小,根据其结果可以判断出模型的好坏程度,并且能够通过误差的反向传播算法进一步地优化网络的参数,使模型网络达到最优状态。损失函数是深度学习模型网络设计中很重要的一步,常用的有对数损失函数、MSE 平方损失函数和交叉熵损失函数等,本文是基于高分辨率遥感图像的城市道路网提取,在语义分割中属于端到端的类型,交叉熵损失函数本质上是对数似然函数,可以用于二分类或多分类的任务中,并且当模型中的激活函数为Sigmoid 函数时,它还可以解决权重更新过慢的问题。

道路信息提取属于二分类问题,所以本文在改进模型损失函数这方面选用二值交叉熵损失函数,二分类模型只涉及正反例,只需要预测一个概率,具体如式(3)、式(4)所示,其中N是总的样本数量。

其中M是Sigmoid函数,y∈[0,1]。

3 实验与分析

3.1 实验准备

3.1.1 高分辨率数据集介绍

实验使用马萨诸塞州数据集和南京玄武湖附近路段数据集。其中,公开的马萨诸塞州道路数据集是由1171 张大小为1500×1500 像素的分辨率为1m 的遥感图像组成,该数据集涵盖城市、郊区和乡村地区,总面积超过2600km2。由于自身电脑的运算能力有限,需要将1500×1500 的遥感图像裁剪至256×256 大小。由于在数据集下载过程中,有部分图像被损坏,除此之外,得到16800 张图像作为数据集,并将其按2:8 的比例分割验证集与训练集,不单独划分测试集。而玄武湖附近道路数据集由4 张10000×8000 像素的高分辨率南京玄武湖附近道路遥感图像组成。与马萨诸塞州温带大陆性气候不同,南京市位于亚热带季风气候区,植被茂密。此地点又位于南京市老城区,由于人们的居住习惯,居民区分布较为密集。因此图像中道路背景信息复杂且整张图像较大,挑选主要道路部分裁剪出16 张大小在512×512 以内的图像。此数据集将用作模型的补充测试集,用于评价改进的模型。

3.1.2 基于深度学习的语义分割流程

基于深度学习的语义分割流程一般可以分为三个阶段,数据预处理、模型训练以及测试验证,具体流程图如图4 所示。若是数据样本较少时,要保证训练效果就需要在数据预处理阶段扩大样本容量,常用方法有对图像进行旋转(90°、180°、270°)、水平镜像、垂直镜像等,本文马萨诸塞州道路数据集在裁剪时获得较多样本,遂不需再扩充样本容量了。模型训练阶段能够通过反向传播模型损失函数的误差来更新优化网络的参数,为的是让模型能够达到最优状态。利用测试数据集和验证数据集来衡量模型的相关性能和分类能力。

图4 图像语义分割流程图

3.2 实验结果

本文模型结合了U-Net 模型和ResNet50 残差模块的优点,与原始卷积结构相比,ResNet50 残差模块将特征提取利用最大化,并且此模型采用了二元交叉熵损失函数来加强网络的训练。因为马萨诸塞州道路数据集内容较丰富,在其中可以找到不同道路场景,比如说简单的道路场景,在这种场景中道路常常是穿过农田或郊区,并没有很多建筑物或者其他遮挡物,除此之外,本文主要研究城市道路网的提取。所以马萨诸塞州数据集结果展示部分挑选了具有代表性的简单道路场景、复杂道路场景以及城市道路网场景,结果如下。

在图5 中,简单道路场景下,主干道路提取结果清晰又连贯,但是在图的右侧有错分现象。在图6 中,图像整体道路情况较为清晰,道路与非道路信息差别明显,但是在原始图像左下角和右上角出现了房屋阴影遮挡问题,导致该处的道路提取结果不连续。图7 中城市道路网场景下的道路提取结果较为连贯,整体来说改进模型作用于此数据集是有效的。

图5 简单道路场景下道路提取结果展示

图6 复杂道路场景下道路提取结果展示

图7 城市道路网场景下的道路提取结果展示

南京玄武湖附近道路数据集分辨率较高,地物信息庞大,且道路本身车道,公共交通等指示线和道路上的车辆较多。图8 中展示了简单道路场景下的道路提取结果,对于主干道部分提取,除了指示线部分提取的结果较为连续。此数据集区域的道路本身属于城市道路网场景下的,为了排除车辆因素影响,图9 中的原始图像截取原遥感图像中道路上车辆少的部分,道路提取结果较为连续。图10 中原始图像在道路右侧有明显的建筑物和树木的影子遮挡,但是提取效果仍是不错的,只是部分出现了不连续现象。如图11 所示,当遥感图像道路上出现大量车辆时,效果是不理想的,与图片右上角小路对比十分明显,即使主干道路宽较宽,有车辆遮挡部分的道路提取是不连续的。

图8 简单道路场景下道路提取结果展示

图9 道路车辆较少路段道路提取结果展示

图10 阴影遮挡路段道路提取结果展示

图11 车辆较多路段道路提取结果展示

3.3 实验成果分析

3.3.1 实验评价

图像标签数据为二值化图像,将道路部分像素值标记为1,非道路部分标记为0,TP指的是在模型预测为正样本,本身就是正样本的数据,即预测值为1,实际值为1。FP指的是在模型预测为正样本,但实际是负样本的数据,即预测值为1,实际值为0。TN 指的是在模型预测为负样本,本身就是负样本的数据,即预测值为0,实际值为0。FN 指的是在模型预测为负样本,但实际是正样本的数据,即预测值为0,实际值为1。本文采用二分类问题常用的混淆矩阵式的评估指标即准确率P(Precision)、召回率R(Recall)、精度A(Accuracy)来评估模型性能,具体如下。

准确率P 就是用来评价模型算法中能够检查出来的正样本的比例,具体公式如下:

召回率R 可以用来评价模型算法的能预测正确样本的能力,在一定程度上可以反映模型性能的好坏,具体公式如下:

精度A 是将正样本和负样本全部预测正确的样本与全部样本预测的结果进行比值,具体如下:

本文模型为U-Net+ResNet50 模型,因马萨诸塞州道路数据集的数据较完善,以在此数据集上的实验数据为准,计算结果如下表1 所示,经计算模型P 值约为0.8,R 值约为0.75。贺浩等[20]得出U-Net模型在马萨诸塞州道路数据集上的P 值和R值分别为0.54 和0.63。王晓霏等[21]提出了一种结合拓扑结构和全局上下文感知的聚合网络(TGCA-Net)无人机影像道路提取方法,模型在马萨诸塞州道路数据集上的P 值和R 值分别为0.67 和0.75。结果表明该模型对于道路提取是有效的,通过对比证明本文应用的模型具有良好性能。

表1 模型在马塞诸塞州道路数据集上的比较

3.3.2 成果分析

本文使用的U-Net+ResNet50 模型应用于道路提取是有效的,在马萨诸塞州道路数据集上的应用效果较佳,对于分辨率更高的玄武湖附近道路数据集,由于两地本身地理环境、城市规划等相差较大,玄武湖附近的道路更宽、车道更多,由于图像拍摄时间不佳,太阳照射地物产生的阴影较多,除此之外,道路上的车辆也对道路提取造成了较大的困难,在此数据集上提取结果就出现了不连续现象。就3.2 节中展示的部分实验数据成果,计算出其道路提取的精确度如表2 所示,图5~图8 属于马萨诸塞州道路数据集,图9~图11 属于玄武湖附近道路数据集。

表2 部分实验数据精度展示

模型在两个数据集的简单道路场景下的实验结果都是较为连续的,图5 精度为100%、图8 精度为83%,而在城市网道路场景下,玄武湖附近道路数据集实验的效果不如马萨诸塞州道路数据集实验效果好,从图9 精度为90%、图10 精度为84%可以推断出,对于被阴影遮挡路段,本文改进的模型提取的结果只是部分出现不连续现象,而对于道路上车辆较多路段,提取结果出现的不连续现象更加严重。但是总地来说,本文模型对于高分辨率遥感图像城市道路网提取的精度有一定的提高。

4 结语

本文主要针对经典模型对于高分辨率遥感图像城市道路信息提取中存在的不足,提出了U-Net+ResNet50 方法。该方法能够增加原有模型感受野并解决梯度弥散问题,从而增加网络深度来提取目标的深层特征。同时,能够推动图像的精细化分割,提升网络计算效率。从不同的数据集中获得的实验结果来看,改进后的模型对于高分辨率遥感图像城市道路网的提取是有效的。其中,基于马塞诸塞州道路数据集,本文的改进模型提取结果的准确率为约为0.8,召回率约为0.75。结果好于早期的U-Net 模型和近期学者提出的改进TGCA-net模型在马萨诸塞州道路数据集上的提取结果。

但是本文模型提取结果的准确率依然存在着一定的提升空间,比如在提取道路遮挡物较多的玄武区附近道路数据集时效果不佳。后续研究中,可以结合更多的道路特征以及优化参数来进一步提升模型的准确率;另外还可以选取国内其他城市的相关道路数据,以此增强模型的泛化能力。除此之外,多种地物提取也是未来研究的一个方向。

猜你喜欢
残差卷积道路
基于双向GRU与残差拟合的车辆跟驰建模
坚持中国道路——方向决定道路,道路决定命运
道听途说
基于3D-Winograd的快速卷积算法设计及FPGA实现
我们的道路更宽广
基于残差学习的自适应无人机目标跟踪算法
基于递归残差网络的图像超分辨率重建
从滤波器理解卷积
基于傅里叶域卷积表示的目标跟踪算法
一次骑行带来的感悟