基于深度学习的遥感影像道路提取优化之路
摘要:当前从遥感影像上进行道路提取的应用越来越广泛,提取道路的方法也有很多,从基于像元到基于对象,再到深度学习。本文基于GeoScene Pro提供的深度学习环境,分析了UNet、PSPNet、Deeplabv3以及MultiTaskRoadExtractor等模型结构,选出针对道路提取较好的模型,并研究和测试了模型的优化参数、总结了一套提高道路提取模型对多源影像数据识别精度的方法。
目录大纲:
一、前言
二、当前道路提取的难点
三、道路提取方法概述
四、道路提取模型的选择
五、道路提取模型的优化
六、多源影像数据泛化识别能力提升策略
七、硬件和效率
一、前言
图1 参考图
二、当前道路提取的难点
1、车辆、绿化带和建筑物的阴影与遮挡对道路提取形成干扰、阻断等。
2、河流、河堤、铁路等线状物体与道路的相似性也为道路提取制造了困难。
3、样本量问题,样本量不够多,样本来源少,导致对各种影像道路识别准确性降低,泛化能力降低。
图2道路提取的干扰
三、道路提取方法概述
图3道路提取方法汇总
1、基于像元的道路提取:是依赖像素点的光谱特征等差异再通过传统的机器学习算法,比如随机森林、支持向量机等来分类的。这类方法容易产生“盐噪声”,并且对道路上的车辆以及道路旁的树木、建筑等造成的阴影不能很好的区分,同时对于复杂的道路口提取效果不佳,需要大量的后处理来修复初提取的道路。
2、面向对象的道路提取:是通过区域分割算法对图像分割成小块,以小块为单位进行分类的。这类方法对于空间相邻、形状相似的地物容易造成混分,从而产生粘连现象,并且设计相对复杂,提取的精度也有待提高。
3、深度学习的道路提取:目前最主要的方法就是通过encoder阶段对图像进行特征提取,再在decoder阶段上采样和叠加细节特征来恢复原始大小进行分类的。由于深度学习强大的预训练模型、强大的模型表达能力、强大的计算推理速度,无疑是当前最佳的道路提取方式。
四、道路提取模型的选择
GeoScene Pro的深度学习模块提供了很多经典优秀的语义分割网络模型,例如Unet、PSPNet、Deeplab v3、Multitaskroadextractor等等。我们针对道路提取通过分析对比道路场景、网络结构,选出了适合的道路提取的模型Deeplab v3和Multitaskroadextractor。
1、Deeplab v3网络设计在道路提取中的优势
图4 Deeplab v3 网络结构图
1)空洞卷积的使用。通常在DCNN中为了增加感受野且降低计算量,总要进行降采样,这样虽然可以增加感受野,但空间分辨率降低了。Deeplab v3中空洞卷积的使用去除了降采样,扩大了感受野,且一定程度上保留空间信息。在道路提取中,优势在于权重参数相对减少,计算量相对减少,计算加快。此外由于空间信息的保留,道路边缘抗干扰性提高,边缘细致化。
图5 标准卷积
图6 空洞卷积
2)空洞空间金字塔的使用。为了提取不同尺度的输入特征,Deeplab v3采用了空洞空间金字塔池化结构。为了更有效的保留空间纹理信息,金字塔池化结构加入了空洞卷积方式。这样在道路提取上保证了道路多尺度特征的提取和更多的空间信息的保留,最终使得道路提取在在提取大路、小路、道路边缘表现更加优秀。
图7 V2版本空洞空间金字塔池化ASPP
2、MultiTaskRoadExtractor网络设计在道路提取中的优势
图8 Multitaskroadextractor网络结构
图9 计算道路矢量方向
然后,基于矢量方向和最短距离算法,从而补全道路拓扑连接。该算法很好的解决了建筑物阴影、绿化带等因素对深度学习提取道路造成的误识别问题。使得识别结果道路拓扑结构完整,连通性有更好的表现。
图10 利用分割和矢量方向计算来修正道路拓扑和连通性
五、道路提取模型的优化
GeoScene Pro提供了很多前沿的深度学习参数,以便于模型的优化,提高模型精度,例如,骨干网络的选取,类别平衡、困难样本学习的设置等,本文具体的优化参数如下。
1、Backbone:CNN史上的一个里程碑事件是ResNet模型的出现,ResNet可以训练出更深的CNN模型,从而实现更高的准确度。基于ResNet改进的DenseNet模型,它的基本思路与ResNet一致,但是它建立的是前面所有层与后面层的密集连接。实现了通过特征在channel上的连接来实现特征重用。这使得DenseNet在参数和计算成本更少的情形下实现比ResNet更优的性能。
图11 ResNet结构
图12 DenseNet结构
2、class_balancing:通过对交叉熵损失函数的不同类别样本权重的重新分配来消除样本数量不均衡的问题。
图13 交叉熵损失函数
图14 类别平衡改进的损失函数
3、focal_loss:通过改进交叉熵函数来解决正负样本中难易样本的关注问题。以正样本为例,简单样本指几个epoch之后预测概率很高的样本,困难样本指概率较低的样本。gamma=2,如果正样本的概率很高,导致损失变得很小,从而降低了简单样本的存在感。如果正样本的概率很低,导致损失变得很大,训练朝着降低困难样本损失的方向进行。
图15 focal_loss损失函数
4、dice_loss_fraction:是将交叉熵损失函数或改进的交叉熵损失函数和dice loss损失函数以0.7和0.3的权重比结合构成新的损失函数。dice loss损失函数的加入适用于样本极度不均的情况。Dice是两个样本相似度度量函数,和iou计算方法类似。
图16 Dice计算公式
图17 dice loss损失函数
5、chip_size:该参数越大,训练过程中感受野越大,考虑上下文环境信息越多,分类精度越高。但随着该参数的增大,模型计算的参数量也越大,导致训练缓慢。目前推荐512*512。
6、unfreeze:该参数在训练过程中可以解冻特征提取层的权重参数,可便于改善网络的权重参数。
7、learning_rate:GeoScene Pro深度学习模块提供了自动求解最优学习率的工具。
最终结论为,针对道路提取的参数优化中,在相同样本的前提条件下,chip_size 512使得模型相对224在miou上提升了9个百分点。class_balancing的使用在万分位略有提高,其他参数的使用相比持平或会略有下降。
通过以上测试,确定了道路提取最优的训练策略,通过GeoScene Pro的深度学习模块,对现有的训练集训练,最终模型标准评价指标可达到92-95%。
Multitaskroadextractor | Deeplab v3 | |
miou | 0.954 | 0.926 |
dice | 0.950 | 0.920 |
表1 模型评估情况
六、多源影像数据泛化识别能力提升策略
1、增加数据源:目前影像数据来自 Google earth、GF、worldview、spacenet、航拍等,空间分辨率从0.5-1 m,通道均为RGB三通道。包含了北京、西安、武汉、深圳、上海、香港、澳门等地的部分区域。目前数据量达到了约45000个512*512。
2、针对性增加道路特征数据集:针对城市建筑间小路识别效果较差,增加了对应的样本量,下图中绿色道路网是增加的未识别或识别效果不好的区域,红色未识别较好的区域。
图18 基于以识别结果,增加未识别和去除误识别
3、数据增强:数据增强可以通过各种变换因子,例如:旋转,反转,空洞,随机噪等,使得单个样本呈现出不同的形态、颜色和纹理,一定程度上消除了由于不同传感器、不同时相、不同地形等为语义分割带来的麻烦,提高模型对多源数据的泛化识别能力。
图19 使用少量数据测试结果,左增强前,右增强后
4、迁移学习:基于已有的预训练模型,对新的训练集(分割效果不好的)进行训练,这样可以避免每次新增训练集就需要重新训练全样本数据,从而耗费大量的时间。此外,通过迁移学习训练的模型,既会对原样本来源类型的数据有优秀的表现,也会对新增样本来源类型的数据有优秀的表现。GeoScene Pro也提供了实现迁移学习的工具。输入已有的训练模型,输入新增的训练集即可进行迁移学习,提高模型识别能力。
图20 迁移学习工具界面
七、硬件和效率
表2 硬件情况
表3 50000样本量的测试
免责声明:
本公众号所有分享的软件和资料来自网络收集和整理,所有文字和图片版权归属于原作者所有,且仅代表作者个人观点,与数据工匠俱乐部无关,文章仅供读者学习交流使用,并请自行核实相关内容,如文章内容涉及侵权,请联系后台管理员删除
免责声明:
本公众号所有分享的软件和资料来自网络收集和整理,所有文字和图片版权归属于原作者所有,且仅代表作者个人观点,与数据工匠俱乐部无关,文章仅供读者学习交流使用,并请自行核实相关内容,如文章内容涉及侵权,请联系后台管理员删除
(欢迎大家加入数据工匠知识星球获取更多资讯。)
联系我们
扫描二维码关注我们
微信:SZH9543邮箱:ccjiu@163.comQQ:2286075659热门文章
重磅|国家互联网信息办公室《网络数据安全管理条例(征求意见稿)》(全文)
12万字 | 2021数据安全与个人信息保护技术白皮书(内附下载链接)
我们的使命:发展数据治理行业、普及数据治理知识、改变企业数据管理现状、提高企业数据质量、推动企业走进大数据时代。
我们的愿景:打造数据治理专家、数据治理平台、数据治理生态圈。
我们的价值观:凝聚行业力量、打造数据治理全链条平台、改变数据治理生态圈。
了解更多精彩内容
长按,识别二维码,关注我们吧!
数据工匠俱乐部
微信号:zgsjgjjlb
专注数据治理,推动大数据发展。