点击下方全系列课程学习
点击学习--->ArcGIS全系列实战视频教程------9个单一课程组合+系列直播回放
点击学习------>遥感影像综合处理4大遥感软件ArcGIS+ENVI+Erdas+eCognition
在使用ArcGIS Pro 的过程中,很多朋友发现,Pro有个成对叠加工具集。很多人只是简单的认为它们只是经典叠加工具开启多线程的并行状态。其实不然。
下面我介绍一下ArcGIS Pro 中成对叠加 工具(成对缓冲、成对裁剪、成对融合、成对擦除、成对整合和成对相交 )和经典叠加工具(缓冲区、裁剪、融合、擦除、整合和相交)的区别。
这次我测试的数据是两个图层,数据量近300万个图斑,有足够的数据量来说明问题。且我在ArcGIS Pro、ArcGIS10.8、QGIS、FME都做了效率测试,来看看ArcGIS Pro的64位的框架是否真的那么快。
我首先也明确一个问题:ArcGIS Pro中的成对相交和相交是有本质区别,只有在特定情况才是一样,且他们的计算引擎也是不一样的。所以本次测试会主要围绕成对相交和相交展开。
0 本期目录
1、成对叠加工具概述
2、经典叠加工具与成对叠加工具的区别
3、成对相交与相交比较
4、实际测评
1 成对叠加工具集概述
工具 | 说明 |
---|---|
成对缓冲 | 用于使用并行处理方法在输入要素周围某一指定距离内创建缓冲区多边形。 |
成对裁剪 | 此工具用于以其他要素类中的一个或多个要素作为模具来剪切要素类的一部分。在您想要创建一个包含另一较大要素类的地理要素子集的新要素类(也称为研究区域或感兴趣区域 (AOI))时,裁剪工具尤为有用。 |
成对融合 | 可使用并行处理方法基于指定的属性聚合要素。 |
成对擦除 | 计算输入和擦除要素的成对交集。只将输入要素处于擦除要素之外的部分复制到输出要素类。 |
成对整合 | 分析一个或多个要素类中要素之间的要素折点的坐标位置。彼此间距离在指定范围内的折点被认为表示同一个位置,并被指定一个共有坐标值(换句话说,将它们定位于同一点)。该工具还会在要素折点位于边的 x,y 容差范围内以及线段相交的位置处添加折点。 |
成对相交 | 计算输入要素的成对交集。输入要素图层或要素类中相叠置的要素或要素的各部分将被写入到输出要素类。成对交集是指从第一个输入中选择一个要素,然后将其与所重叠的第二个输入中的要素相交。 |
2 经典叠加工具与成对叠加工具的区别
成对缓冲和缓冲区
下面对成对缓冲和缓冲区工具进行了比较:
-
这两种工具都使用并行处理。对于成对缓冲工具,默认启用并行处理。对于缓冲区工具,可通过"并行处理因子"环境进行启用。
-
默认情况下,成对缓冲工具的输出要素的平滑度低于通过缓冲区工具创建的输出要素。
-
成对缓冲工具可控制缓冲区输出要素的平滑度。有关最大偏移偏差参数的信息,请参阅工具文档。
-
缓冲区工具提供了一些输出缓冲区选项,例如侧类型和末端类型。
成对裁剪和裁剪
-
这两种工具都使用并行处理。对于成对裁剪工具,默认启用并行处理。对于裁剪工具,可通过"并行处理因子"环境进行启用。
成对融合和融合
-
这两个工具的输出相似,并且可以互换使用。
-
成对融合工具默认使用并行处理。 融合工具没有并行功能。
成对擦除和擦除
-
这两个工具的输出相似,并且可以互换使用。
-
这两种工具都使用并行处理。对于成对擦除工具,默认启用并行处理。对于擦除工具,可通过"并行处理因子"环境启用并行处理。
成对整合和整合
-
成对整合工具默认使用并行处理。
-
成对整合工具的内部容差稍稍大于整合工具,因为用于执行集成的基础引擎存在差异。
成对相交和相交
-
这两个工具的输出基本上互不相同。在未评估工作流以及必须如何更改才能考虑不同输出的情况下,这两个工具不能互换使用。有关详细信息,请参阅成对相交的工作原理。
-
这两种工具都使用并行处理。对于成对相交工具,默认启用并行处理。对于相交工具,可通过"并行处理因子"环境进行启用。
综上,除了成对相交和相交外其他成对叠加工具,主要是运行效率以及一些微小容差上的区别,基本可以互换使用以提高运行效率。
3 成对相交与相交比较
比较相交和成对相交
使用成对相交,第一个输入中的某一要素可以与第二个输入中的每一个要素相交。这与相交工具的工作原理本质上不同。使用相交,无论要素属于哪个输入图层,所有要素均可相交。
相交工具
-
可以相交多个要素图层或要素类
-
查找所有输入要素的相交,无论其属于哪个输入要素图层,同时创建表示所有要素几何相交的拓扑结构
成对相交工具
-
仅适用于两个输入要素图层或要素类
-
从第一个输入要素图层中获取要素,使其与第二个输入图层中的各要素相交,每次一个,同时创建表示相交的新要素
相交工具
无论属于哪个输入要素图层,要素间的所有叠加(相交)均计算在内。因为所有相交均计算在内,输出可能会包括比所有合并输入要素数量更多的要素。还有许多情况,全部输入共包括数万个要素,但由于所有要素之间均存在着复杂叠加,所以输出包括数亿个要素。
例如,以下所示的两个要素图层。一个包括 10 个要素 - 点周围的缓冲区,另一个包括一个要素 - 一个方形。
输入 1 包括 10 个叠加面要素,以 OID 标注
输入 2 - 1 面,以 OID 标注。
下图显示以上两个要素图层相交的结果。注意:无论属于哪个输入要素图层,要素间的所有叠加(相交)均计算在内。这会产生远超出原输入要素数量的要素。输出中的面(167 个要素)比合并输入中的面(输入总数为 11 个要素)多很多。这会增加相交工具中新要素的数量,根据输入中叠加的复杂程度,输出可能增长迅速。
成对相交工具
使用成对相交工具,输出将更简单。每个输出要素都是输入 1 中的某一个要素与输入 2 中要素的相交。使用相交工具,输入 1 中要素间的相交将计算在内,而使用成对相交则不会。
成对相交输出:10 个输出要素。
综上,想要用成对相交代替相交提高工作效率,只有当两个输入图层内部没有自重叠才可以哦。
4 实际测试
这次我使用近300万(3000000)个地类图斑和84个区县图层进行相交分析,计算每个区县的地类面积汇总情况。
测试环境:服务器 CPU E5-2680 V4(服务器级CPU) RAM 128GB,测试配置还是比较强悍的
-
4.1 使用ArcGIS10.8相交分析:运行时间 44分钟
-
4.2 ArcGIS Pro 3经典相交分析:运行时间58分钟(做了2次测试)
-
4.3 ArcGIS Pro 3成对相交分析:运行时间22分钟
-
4.4 QGIS 3相交分析:运行时间18分钟
-
4.5 FME2020相交分析:持续的内存错误,没有继续测试。大家可以使用AreaonAreaOverlay,但是推荐使用Clipper转换器,实现更加快捷。加上为了懒,我就不再等了。FME在运行效率上本身不具有优势。
计算结果上:
ArcGIS Pro 的经典相交与ArcGIS10.8的相交图斑个数基本相同,相差8个,汇总后的面积一致,且ArcGIS10.8的相交效率优于ArcGIS Pro的经典相交???
我为此做了2次测试。··················
ArcGIS Pro成对相交后图斑个数,相差4054个图斑,面积相差0.7平方米,对于总数十万平方公里以上基本忽略不计。
所以,计算成果一致,成对相交有十分突出的计算效率。但是注意不是任何情况下成对相交与经典相交可以通用。
但是此次由于数据格式问题,数据内部几何问题,QGIS有很多漏算的图斑,导致后续计算错误,图斑汇总面积缺失2千平方公里,后续可修复等问题后再做计算,可见不同软件格式的数据再不同平台之间计算时就会存在数据丢失的情况。且QGIS目前在百万级图斑计算时容易出现
所以大批量数据运算时目前还是采用ArcGIS系列工具来进行运算。
ArcGIS Pro的成对相交工具具有明显的效率优势。但是要注意他与经典相交的区别。
ArcGIS Pro 3.1.5 破解+安装+软件分享+测试说明
ArcGIS Pro稳定版 3.0.2 破解+安装+软件分享+测试说明