创建镶嵌数据集并从影像中提取要素
要标识易受自然灾害影响的基础设施,必须先了解基础设施的位置。 您将下载包含此工作流所需的所有数据的 ArcGIS Pro 工程包,并创建镶嵌数据集以保存影像。 然后,您将访问 ArcGIS Living Atlas 中预训练的深度学习模型,该模型使用人工智能自动从影像图层中提取建筑物覆盖区。
下载工程包并将其打开
首先,您将下载 ArcGIS Pro 包并将其打开。 其中包含本教程所需的所有数据和地图。
- 下载 Grenada-landslide-risk 工程包。
随即将名为 Grenada-landslide-risk.ppkx 的文件下载到您的计算机。
注:
.ppkx 文件是一个 ArcGIS Pro 工程包,可能包含可以在 ArcGIS Pro 中打开的地图、数据和其他文件。 通过本指南了解有关管理 .ppkx 文件的详细信息。
- 在计算机上找到已下载的文件。 双击该文件以在 ArcGIS Pro 中将其打开。 如果出现提示,请登录 ArcGIS 帐户。
注:
如果您没有 ArcGIS Pro 的访问权限或者 ArcGIS 组织帐户,请参阅软件访问权限选项。
工程随即打开。
该工程包含两个地图:Building footprint extraction 和 Susceptibility analysis,您将在本教程的不同部分中使用这两个地图。 现在,您将使用 Building footprint extraction 地图。
- 验证建筑物覆盖区提取选项卡是否处于选中状态。
该地图包含描绘世界的默认地形底图。 接下来,您将添加影像数据。
创建镶嵌数据集
在本部分中,您需要准备影像数据集以提取建筑物覆盖区。
已下载的工程包含表示部分格林纳达岛的航空影像。 您现在需要在工程中定位该航空影像。
- 单击功能区上的视图选项卡。 在窗口组中,单击目录窗格。
随即显示目录窗格。
- 在目录窗格中,展开 Folders、Grenada_landslide_risk、commondata 和 Aerial-imagery。
- 在功能区视图选项卡的窗口组中,单击地理处理。
- 在地理处理窗格的搜索框中,键入 Create Mosaic Dataset。 在结果列表中,单击创建镶嵌数据集工具以将其打开。
- 在创建镶嵌数据集工具的参数选项卡中,对于输出位置,单击浏览按钮。
- 在输出位置窗口中,单击数据库,选择 grenada_landslide_risk.gdb,然后单击确定。
- 对于镶嵌数据集名称,键入 Grenada_aerial_imagery。
- 对于坐标系,请单击选择坐标系按钮。
您希望针对所有工程数据使用坐标系 WGS 1984 Complex UTM Zone 20N,因为该坐标系对于格林纳达岛位置是个不错的选择。
- 在坐标系窗口的搜索框中,键入 WGS 1984 Complex UTM Zone 20N。 展开投影坐标系、UTM、WGS 1984、Northern Hemisphere,选择 WGS 1984 Complex UTM Zone 20N,然后单击确定。
- 接受其他默认值,然后单击运行。
空的 Grenada_aerial_imagery 镶嵌数据集随即显示在内容窗格中。
现在,您将向其中添加 16 个 TIFF 图像。
- 在地理处理窗格的底部,单击目录选项卡。
- 在目录窗格中,展开 Databases 和 grenada_landslide_risk.gdb。
- 右键单击 Grenada_aerial_imagery 并选择添加栅格。
- 选择以下添加栅格至镶嵌数据集参数值:
- 在输入数据下,选择文件夹。
- 在输入数据下,单击浏览按钮。 在输入数据窗口中,浏览至 Folders > Grenada-landslide-risk、commondata,然后选择 Aerial_imagery。 单击确定。
- 展开栅格处理部分并选中计算统计数据和构建栅格金字塔框。
- 展开镶嵌后处理部分并选中构建缩略图和更新概视图框。
- 接受其他默认值,然后单击运行。
- 该过程完成后,在内容窗格中,右键单击 Grenada_aerial_imagery 并选择缩放至图层。
在地图上,随即显示镶嵌数据集。 亮绿色的线显示了 16 个 TIFF 图像的边界。
- 在内容窗格中,取消选中 Footprint 旁的复选框以关闭该图层。
该影像现在显示为单个图层。
- 放大并在地图周围平移,从而更近距离地查看建筑物位置。
格林纳达的这一部分地区有数百栋建筑物。 您可以手动追踪每个建筑物并将覆盖区作为要素存储在要素图层中,但此操作枯燥乏味且十分耗时。 您将改为使用深度学习以自动提取建筑物覆盖区。
使用深度学习提取建筑物覆盖区
深度学习模型可以有效地对影像中的要素进行分类或检测。 构建和训练自己的深度学习模型或微调现有预训练模型是一项高级任务。 使用深度学习最困难、最耗时的方面是创建一系列训练样本,这些样本将用于教模型识别您感兴趣的特定类型的信息。 或者,可以使用现有已训练模型。 ArcGIS Living Atlas of the World 提供日益丰富的此类已训练深度学习模型库。 借助这些模型,您可以直接使用人工智能提取信息,并从影像中获得见解。 接下来,您将使用 ArcGIS Living Atlas 中的已训练模型,以在影像图层中检测建筑物覆盖区。
注:
在 ArcGIS Pro 中使用深度学习工具需要在计算机上安装正确的深度学习库。 如果您未安装这些文件,请确保已关闭 ArcGIS Pro,然后按照在 ArcGIS Pro 中为深度学习做好准备中提供的步骤说明操作。 在这些说明中,您还可以了解如何检查您的计算机硬件和软件能否运行深度学习工作流,以及获取其他有用的提示。 完成后,您即可继续本教程。
- 在地理处理窗格中,单击后退按钮。
- 单击工具箱选项卡。
- 展开 Image Analyst 工具和深度学习,然后单击使用深度学习检测对象工具以将其打开。
- 设置以下使用深度学习检测对象参数值:
- 对于输入栅格,选择 Grenada_aerial_imagery。
- 对于输出检测对象,键入 Grenada_Buildings。
- 对于模型定义,单击浏览按钮。
- 在模型定义窗口中的门户下,单击 Living Atlas。 在搜索框中键入 Building Footprint Extraction。 选择建筑物覆盖区提取 - 美国并单击确定。
选择深度学习模型后,模型参数将自动加载。
- 对于阈值,键入 0.6。
注:
仅当置信水平等于或大于阈值时,才会将检测到的对象添加至输出数据集。 通过反复试验可以找到最佳阈值。
- 单击环境选项卡。
- 对于处理器类型,选择 GPU。
注:
运行此工具可能需要 10 到 20 分钟时间,具体取决于您的计算机规格。 或者,可以在较小的范围内测试该工具,以获得更快的处理时间:放大至 1:2500 范围,然后在该工具的环境选项卡上,将处理范围更改为当前显示范围。
- 接受所有默认值,然后单击运行。
提示:
可能会显示一个警告窗口,指示预训练模型正在下载。 只需让下载过程完成即可,无需执行任何操作。
您可以监控运行按钮下的进程进度,也可以单击查看详细信息以查看详细信息。
该进程完成后,结果图层 Grenada_Buildings 随即显示在内容窗格和地图上。 该图层为要素图层,其中每个面表示一个建筑物。
- 或者,在内容窗格中,右键单击 Grenada_Buildings 符号,然后在颜色选取器中选择一种颜色,借助该颜色,可以清晰显示新图层。
- 在地图上进行放大并检查 Grenada_Buildings 图层。
您将使用卷帘工具以更好地比较提取的建筑物图层和基础影像。
- 在内容窗格中,确保 Grenada_Buildings 图层处于选中状态。
- 在功能区要素图层选项卡的比较组中,单击卷帘。
- 在地图上,从一侧到另一侧重复拖动卷帘控点以剥离提取的建筑物图层并显示下方影像图层。
提示:
当处于卷帘模式时,通过按键盘上的 C 并使用鼠标进行拖动,可以在地图上进行平移。
您可以观察到此模型已成功检测到几乎所有的建筑物。
注:
如果您将此工作流应用于自己的影像数据,在某些情况下,建筑物检测结果的质量可能不能满足需求。 在这种情况下,建议接下来改进预训练模型,以改进数据。 请参阅通过迁移学习改进深度学习模型教程。
- 完成浏览后,在功能区地图选项卡的导航组中,单击浏览按钮以退出卷帘模式。
- 在快速访问工具栏中,单击保存按钮以保存您的工程。
在该工作流的前半部分中,您下载了 ArcGIS Pro 工程包并将其打开。 然后,您创建了一个镶嵌数据集并向其中添加影像。 您通过 ArcGIS Living Atlas 中的预训练模型使用深度学习提取了影像中的建筑物覆盖区,并将结果存储在要素图层中。 最后,您对提取的建筑物与原始影像进行了比较。
执行山体滑坡敏感性分析
了解建筑物位置后,必须识别格林纳达岛上容易发生山体滑坡的区域。 对于此分析,您将使用 4 个栅格图层,并将其应用于单个栅格函数模板中的多个栅格函数。 最后,需要将滑坡敏感性结果图层与提取的建筑物图层进行比较,以确定风险最高的建筑物。
探索栅格图层
要分析山体滑坡敏感性,您将使用 4 个 TIFF 格式的栅格图层作为输入。 每个图层表示滑坡风险评估中的一个主要因素:
- 土壤类型 - 土壤中含有特定类型粘土的区域发生山体滑坡的风险较高。
- 高程 - 坡度更陡的区域风险较高。
- 与河流的距离 - 距离河流较近的区域风险较高。
- 土地利用 - 具有道路、建筑物和人工植被的区域风险较高;森林区域的风险较低。
现在,您将探索以上 4 个图层。
- 单击敏感性分析地图选项卡。
随即显示敏感性分析地图,其中包含在内容窗格中列出的 4 个图层。 所有图层当前处于关闭状态。
- 在内容窗格中,选中 Land_use.tif 图层旁的框以将其打开。
- 检查地图上的 Land_use.tif 图层及其在内容窗格中的图例。 进行放大和平移以更好地理解图层中包含的信息。
- 同样,打开并检查 Distance_to_rivers.tif、Elevation.tif 和 Soil_types.tif。
(A) 土地利用,(B) 与河流的距离,(C) 高程,(D) 土壤类型。 提示:
展开内容窗格中的 Soil_types.tif 图层以查看其图例。 完成后再关闭图例,因为图例将占用大量空间。
接下来,您将使用这些图层作为山体滑坡敏感性分析的输入。
使用栅格函数模板创建敏感性图层
您将使用 4 个栅格图层作为输入来执行敏感性分析。 您将向这些图层应用多个聚集(或链接)到单个栅格函数模板 (RFT) 中的栅格函数。 将在已下载的工程包中提供此 RFT。 首先,您将以编辑模式打开 RFT 以检查其内容。
注:
栅格函数是对栅格动态应用处理,而不会将结果保存到磁盘的操作。 由于没有创建任何中间数据集,因此可以快速应用流程。
- 在功能区影像选项卡的分析组中,单击栅格函数按钮。
- 在栅格函数窗格中,单击工程选项卡。 如有必要,请展开 Grenada_landslide_risk 部分。
注:
如果未看到栅格函数模板,请按照以下步骤进行操作:
在栅格函数窗格中,单击自定义选项卡。 在 Landslide Grenada 旁边,单击导入函数按钮。 在选择处理模板窗口中,浏览至 Folders > Grenada_Landslide_Risk > P30 > RasterFunctionTemplates > Grenada_Landslide_Risk,单击 Landslide Susceptibility.rft.xml,然后单击确定。
- 右键单击山体滑坡敏感性 RFT 并选择编辑。
RFT 随即出现在函数编辑器窗口中。
RFT 中的 4 个绿色元素表示 4 个栅格输入。 每个黄色元素表示 1 个栅格函数。 该过程如下:
- 首先,将对一些栅格进行预处理,例如,将高程栅格转换为坡度栅格,其中每个像元用于标识其特定位置处的地形陡度(坡度函数)。
- 然后,将对每个栅格进行处理,从而将每个像元的原始值转换为 1 到 10 的值,其中 10 表示最高滑坡风险,1 表示最低滑坡风险(重映射或计算器函数)。
- 然后,对 4 个结果图层进行组合(加权和)并将其转换到输出栅格中,其中每个像元包含 1 到 5 的值,该值表示总体滑坡敏感性得分(重映射:分类结果)。
- 最后,将为 1 到 5 的值附加标注,以表示 5 类风险(非常低、低、中等、高、非常高),并使用相关配色方案(属性表)表示。
- 或者,双击 RFT 中的某些栅格函数以查看其设置方式。
- 完成查看后,请关闭 Landslide Susceptibility.rft.xml 函数编辑器窗口。
现在,您需要将 RFT 应用于您的数据。
- 在栅格函数窗格中,单击 Landslide Susceptibility RFT 以将其打开。
- 选择以下山体滑坡敏感性参数:
- 对于土壤类型,选择 Soil_types.tif。
- 对于高程,选择 Elevation.tif。
- 单击土地利用,选择 Land_use.tif。
- 对于与河流的距离,选择 Distance_to_rivers.tif。
- 单击创建新图层以生成敏感性分析图层。
结果图层随即出现。
红色区域最容易发生山体滑坡,绿色区域最不易发生山体滑坡。
在本部分中,您运行了栅格函数模板以创建滑坡敏感性栅格图层。
将建筑物覆盖区与山体滑坡敏感性结果进行比较
现在,您将直观地将之前已提取的建筑物覆盖区与山体滑坡敏感性图层进行比较,以标识存在风险的建筑物。 首先,您需要向当前地图添加建筑物覆盖区图层。
- 单击建筑物覆盖区提取选项卡以转至第一个地图。
- 在内容窗格中,右键单击 Grenada_Buildings 并选择复制。
- 单击敏感性分析选项卡以返回到第二个地图。
- 在内容窗格中,右键单击敏感性分析并选择粘贴。
随即将 Grenada_Buildings 图层添加至该地图。
- 右键单击 Grenada_Buildings 图层并选择缩放至图层。
- 地图随即放大至您使用深度学习模型已提取建筑物的区域。
注:
为了确保本教程的简洁性,您仅提取了部分岛屿的建筑物覆盖区。 在现实生活中,您可能会选择提取整个岛屿的建筑物覆盖区。
- 要提高显示速度,请关闭所有输入数据图层(Soil_types.tif、Elevation.tif、Land_use.tif 和 Distance_to_rivers.tif)。
- 缩放和平移地图以标识位于高风险区域的建筑物(红色或橙色)。
格林纳达的大多数建筑物似乎都位于风险较低的区域。 但是,一些建筑物出现在高风险区域(橙色)。
您已成功使用 Landslide Susceptibility 图层以定位存在风险的建筑物。 但是,该图层是一个仅存在于内存中的动态图层,因为其是使用栅格函数生成的。 现在,您可以将其保存到计算机存储中,以便将来重复使用并且更加轻松地与同事和社区进行共享。
- 在内容窗格中,右键单击 Landslide Susceptibility 图层,指向数据,然后选择导出栅格。
- 在导出栅格窗格中,设置以下参数值:
- 对于输出格式,验证是否选择了 TIFF。
- 对于坐标系,验证是否选择了 WGS_1984_Complex_UTM_Zone_20N。
- 在像元大小下,对于 X 和 Y,键入 5。
栅格输出的每个像元将表示地面上 5 米 x 5 米的正方形。
- 接受所有默认值,然后单击导出。
片刻之后,新栅格将出现在地图上。 它看起来类似于动态图层。 但是,您可以发现它保存在目录窗格中。
- 在目录窗格中的 Folders > Grenada_landslide_risk 下,找到 Landslide Susceptibility.tif。
- 单击 Ctrl+S 以保存您的工程。
在本教程中,您使用了影像和其他类型的栅格数据以研究格林纳达岛上存在山体滑坡风险的建筑物。 在 ArcGIS Pro 中,您创建了一个镶嵌数据集并向其中添加了航空影像。 然后,您在 ArcGIS Living Atlas 中访问了预训练深度学习模型,并使用该模型自动从航空影像图层中提取建筑物覆盖区。 接下来,您使用了栅格函数模板以执行栅格分析并根据滑坡敏感性对景观进行分类。 您比较了山体滑坡敏感性图层和已提取的建筑物覆盖区,以可视化存在风险的建筑物。 最后,您将山体滑坡敏感性栅格保存到磁盘。 现在,您的结果图层可供您或社区中的其他成员在进一步的制图和分析工作流中使用。