聚焦︱如何利用深度学习功能提取建筑物轮廓并对其进行损坏分类
导读
对房屋进行损坏评估,是处理灾害索赔流程中的关键任务。火灾发生时,火灾图像背景复杂、人工特征提取过程繁琐,容易出现精度不高、误报和漏报等问题,大大增加了房屋损坏评估工作难度,使用深度学习方法可以加快处理过程并提高效率。那么,如何使用无人机图像和深度学习方法进行房屋损坏评估?如何利用深度学习从图像中提取建筑物轮廓?详情见下文。
在Esri用户大会的全体会议上,USAA(United Services Automobile Association)演示了在破坏性的伍尔西火灾(Woolsey Fire)后,如何使用ArcGIS中的深度学习功能对房屋自动进行损坏评估。这是处理灾害索赔流程中的一项关键任务,使用深度学习可以加快处理过程并提高效率。整个流程包含从训练深度学习模型到使用它检测受损房屋,本文将逐步为大家进行介绍。
深度学习需要的第一件事就是训练数据。为了建立模型,人们需要教给它,受损的房屋在无人机图像中应该是什么样子的。为此,我们使用ArcGIS Pro手动为数百座房屋贴上标签,通过查看它们的无人机图像,将它们标记为受损或未受损。在这个过程中,我们使用了现有的建筑物轮廓地理信息系统层(Existing Building Footprints Layer)。我们在建筑轮廓层中创建了一个新的字段,并在属性中标出了损坏或未损坏。
使用ArcGIS Pro中的“深度学习导出训练数据(Export Training Data for Deep Learning)”这一工具,将培训样本导出为“Labelled Tiles”格式。ArcGIS Pro最近增加了用于支持Labelled Tiles格式的训练数据的新功能,以助力这项任务。
图1 使用Labelled Tiles进行房屋损坏分类模型的训练
一旦我们准备好了训练数据,我们就使用Python API中的ArcGIS Notebooks 和ArcGIS. Learn模块来培训模型。如下图所示,基本上只需要10-12行ArcGIS. Learn代码就可以了。
图2 Notebook用于训练房屋损坏分类模型
ArcGIS Notebooks预先配置了必要的深度学习库,因此不需要额外的设置。使用ResNet34体系结构训练模型的准确率超过99%。但这并不是一件很神奇的事情,因为深度学习特别擅长类似这样的图像分类任务。
图3 建筑物损坏分类---红色为已损坏建筑
当notebook完成运行时,它已经对模型进行了训练,并更新了图层,将所有可用的建筑物分类为损坏的或未损坏的。下图为一张包含了房屋损坏分类结果的网络地图。
图4 建筑物损坏分类结果图层
结果发现,由于更新的开发,我们现有的建筑轮廓层已经过时了——它没有包含所有的建筑。像这样获得高质量的地理空间数据是耗费大量人力物力财力的。那么我们能利用深度学习从图像中提取最新的建筑物轮廓吗?结果证明我们可以!请继续往下看。
首先我们使用现有的建筑轮廓作为训练数据来训练另一个用于提取建筑足迹的深度学习模型。这一次,我们需要训练的模型是一个像素分类模型,其中每一个属于建筑的像素都需要这样标记。
图5 建筑物提取的像素分类
ArcGIS Pro支持以Classified Tiles格式导出训练样本,以训练此类模型。我们所要做的就是将现有的建筑轮廓层转换为一个分类栅格并将其输入到工具中。
训练模型并不难。我们的训练notebook和之前使用的一样,但这次我们在ArcGIS. Learn中使用了U-net模型进行像素分类。在这里训练的模型被用来分割属于建筑物的像素。ArcGIS pro支持ArcGIS. Learn保存的模型。
图6 训练一个用于提取建筑轮廓的U-net分类器
图7 图像栅格化和建筑轮廓矢量化的过程
我们使用深度学习工具对像素进行分类,利用模型对图像进行分割,并在ArcGIS Pro中对生成的栅格进行后处理,提取建筑物轮廓。为了对分类图像进行后期处理,我们使用了模型生成器,它对重复的工作流程非常有用,特别是在我们试验参数以获得最佳结果时。
图8 使用模型生成器进行后处理
下面我们将看到建筑物轮廓模型的成果,我们在这里为大家展示一个包含了提取的建筑轮廓的Web地图。在没有人工干预的情况下自动生成如此高质量的建筑物轮廓图,证明了人工智能的进步。在所有必要的工具都就位的情况下,在ArcGIS中执行这种端到端的流程可以使得整个图像处理过程变得简单明了。
图9 使用自动流程提取的建筑轮廓——无需手工编辑
最后,为了提取并更新我们整个兴趣区域中60000多栋建筑的的建筑轮廓,我们使用了具有分布式栅格分析功能(RasterAnalytics)的ArcGIS Enterprise,并扩展了处理能力,以便在20分钟内完成这项工作,达到每分钟生成3,000个建筑轮廓的惊人速度!
时间是一种重要的资源,无论是用于处理保险索赔,还是为受飓风、洪水或火灾等自然灾害影响的人提供援助。在不幸事件发生后,运用类似于这样的深度学习技术来帮助评估损失可以帮助人们挽救更多的生命!
责任编辑:林冬娜、邓小云
文章来源:慧天地