原文链接
原作者:Rohit Singh, Sandeep Kumar
贡献者:Vinay Viswambharan, Divyansh Jha, Shivani Pathak, Daniel Wilson.
翻译:荆雪涵
在今年的 Esri 用户大会上,USAA 展示了基于 ArcGIS 深度学习能力,对 Woolsey 火灾进行自动化损害评估的应用。该项目是灾害上报流程的一项重要任务,结合深度学习技术可以提高灾害上报流程的效率。本文介绍如何使用深度学习技术,检测出在灾害中受到损害的建筑物。
基于无人机影像以及深度学习的损害评估
深度学习技术通过训练数据,学习图像中的特征。为了训练我们的深度学习模型,我们需要将无人机影像中的受损建筑物的形态输入模型中。我们使用 ArcGIS Pro 人工标注了几百个建筑物的无人机影像,将这些建筑物分为“受损”和“未受损”两类。在已有的建筑物轮廓线要素类中,我们新建了一个属性字段来保存建筑物的受损情况。
导出训练样本
使用 ArcGIS Pro 里的 Export Training Data For Deep Learning 工具,我们可以导出“标签瓦片”格式的训练样本。ArcGIS Pro 现在支持导出“标签瓦片”格式的训练样本。
训练损害分类模型
我们准备好训练数据之后,就可以使用 ArcGIS Notebooks,以及 Python API 中的 arcgis.learn 模块来训练模型。整个过程只需要10-12行代码,代码如下。
ArcGIS Notebooks 预装了一些深度学习模型,不需要额外配置。使用 ResNet34 训练的模型,可以达到99%的准确率。众所周知,深度学习处理此类图像分类任务的效果一向都很好。
推断预测
Notebook 运行完成后,我们会得到一个训练好的模型,以及更新后的建筑物轮廓线要素类,要素类中包含两种建筑物损害状态“受损”,“未受损”。我们将所有结果可视化生成网页地图,建筑物损害分类地图链接请戳这里。
由于地产开发,建筑物轮廓线要素类得不到及时更新,反映不了最新的建筑物轮廓状况。实时更新的数据通常需要花费很多人工成本。那么,我们是否可以用深度学习技术从影像中提取建筑物轮廓线呢?当然可以,各位看官请继续往下读。
提取建筑物轮廓线
我们使用已有的建筑物轮廓线作为训练数据,来训练提取建筑物轮廓线的深度学习模型。这次的模型是基于像素的分类模型,即,影像中包含建筑物的像素将被归为“建筑物”类别。
导出训练数据
使用 ArcGIS Pro 我们可以导出“分类瓦片”格式的训练数据样本。我们将已有的建筑物轮廓线的矢量数据栅格化后,使用 ArcGIS Pro 中的 Export Training Data For Deep Learning 工具即可导出训练样本数据。
训练模型
模型训练过程并不复杂。在 ArcGIS Notebooks 中,使用 arcgis.learn 模块中的 U-Net 模型就可以进行像素分类。
训练好的模型可以从影像中提取出建筑物的部分,使用 arcgis.learn 模块可以保存训练好的模型,模型后期可以在 ArcGIS Pro 中使用。
提取建筑物轮廓线
使用 Classify Pixels Using Deep Learning 工具,可以生成建筑物轮廓的栅格数据,后期可以使用 ArcGIS Pro 将栅格数据转化成建筑物轮廓线的矢量数据。我们使用 Model Builder 设计整个流程。使用 Model Builder 方便研究者重复运行,方便研究者调试参数。
最后提取的轮廓线结果如下。
最终结果的可视化地图请戳此链接。自动化提取如此高精度的建筑物轮廓线无疑是对 AI 技术的肯定。ArcGIS Pro 中各种工具使得该流程格外简单清晰。
推断预测
最后,我们结合 ArcGIS Enterprise 中的分布式 RasterAnalytics 功能,提取研究区域内60,000多个建筑物轮廓线,整个过程只需要20分钟,也就是说每分钟提取3000多个建筑物轮廓线。
在灾害应对中,时间就是生命,争取更多时间便可以更高效的处理保险上报请求,提供更有效的援助。深度学习技术无疑是灾害应对中的救世主。