哪个快?用300万个图斑测试ArcGIS Pro的成对叠加与经典叠加

点击学习—>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 破解+安装+软件分享+测试说明
5 推荐学习
ArcGIS全系列实战视频教程——9个单一课程组合
4大遥感软件!遥感影像解译!ArcGIS+ENVI+Erdas+eCognition
ArcGIS10.X入门实战视频教程(GIS思维)
ArcGIS之模型构建器(ModelBuilder)视频教程
ArcGIS之遥感影像分类及成果应用视频课程
ArcPy结合数据驱动模块的批量制图
ArcGIS之Data Reviewer空间数据质量检查
相关文章:

哪个快?用300万个图斑测试ArcGIS Pro的成对叠加与经典叠加
点击下方全系列课程学习 点击学习—>ArcGIS全系列实战视频教程——9个单一课程组合系列直播回放 点击学习——>遥感影像综合处理4大遥感软件ArcGISENVIErdaseCognition 在使用ArcGIS Pro的过程中,很多朋友发现,Pro有个成对叠加工具集。很多…...

超详细!百分百安装成功pytorch,建议收藏
文章目录 一、Anaconda安装1.1下载anaconda1.2配置Anaconda环境1.3验证anaconda是否安装成功 二、查看电脑显卡三、更新显卡驱动3.1下载驱动3.2、查看显卡驱动版本 四、cuda安装4.1CUDA下载4.2CUDA环境配置4.3验证CUDA是否安装成功 五、安装pytorch4.1下载pytorch5.2验证pytorc…...

web基础—dvwa靶场(四)File Inclusion
File Inclusion(文件包含) 有些 web 应用程序允许用户指定直接文件流的输入,或允许用户将文件上载到服务器。稍后 web 应用程序访问 web 应用程序上下文中用户提供的输入。通过这样种操作,web 应用程序允许恶意文件执行。 如果选择要包含的文件是目标计…...

【Python】练习:控制语句(二)第1关
第1关:分支结构基础实训 第一题第二题第三题第四题(※)第五题(※)第六题第七题 第一题 #第一题 for temp in [-280, -100, 0, 20, 120, 200]:#请在下面编写代码# ********** Begin ********** #if temp>-273.15:F9/…...

Vue3 : Pinia的性质与作用
目录 一.性质 二.作用 三.Pinia 的核心概念 四.使用 1.count.ts 2.count.vue Vue 3 中 Pinia 是一个专为 Vue 3 设计的状态管理库,它旨在提供一种简单、直观的方式来管理应用的状态。 一.性质 1.集成性:Pinia 是 Vue 3 官方推荐的状态管理库&…...

对接金蝶云星空调用即时库存信息查询API
文章目录 前言准备工作获取第三方授权权限与授权配置信息集成金蝶云SDK调用实现备注前言 对于有自己商品信息管理后台并且使用金蝶ERP系统管理物料的商家来说,将金蝶上物料的库存信息同步到管理后台就可以不用去金蝶上确认库存了,可以大大简化管理后台的库存变更工作,这篇文…...

pretrain Llama3
导入模块:导入了一些必要的模块,包括数学计算、时间处理、文件操作、深度学习框架(如torch)、以及自定义的LLama Transformer模型相关内容。 I/O配置:定义了模型输出路径、评估与日志记录的间隔步数、批次大小、最大序…...

[附源码]SpringBoot+VUE+Java实现人脸识别系统
今天带来一款优秀的项目:java人脸识别系统源码 。 系统采用的流行的前后端分离结构,内含功能包括 “人脸数数据录入”,“人脸管理”,“摄像头识别” 如果您有任何问题,也请联系小编,小编是经验丰富的程序员…...

数据库_解决SQL Server数据库log日志过大,清理日志文件方法
SQL Server数据库日志文件过大的原因主要有几个方面: 事务日志记录了所有对数据库进行修改的操作,如插入、更新和删除,这些操作会不断增加日志文件的大小。 长时间运行且未正确结束的事务会持续占用事务日志中的空间,导致日志文…...

引领长期投资新篇章:价值增长与财务安全的双重保障
随着全球金融市场的不断演变,长期投资策略因其稳健性和对价值增长的显著推动作用而日益受到投资者的重视。在这一背景下,Zeal Digital Shares(ZDS)项目以其创新的数字股票产品,为全球投资者提供了一个全新的长期投资平…...

灾备技术演进之路 | 虚拟化无代理备份只能挂载验证和容灾吗?只能无代理恢复吗?且看科力锐升级方案
灾备技术演进之路系列 虚拟化备份技术演进 摆脱束缚,加速前行 无代理备份仅能挂载/恢复验证吗? ——科力锐极简验证演练无代理备份来了 无代理备份无法应对平台级故障吗? ——科力锐应急接管无代理备份来了 无代理备份仅能同平台挂载吗&a…...

PowerShell install 一键部署Oracle23ai
Oracle23ai前言 Oracle Database 23ai Free 让您可以充分体验 Oracle Database 的能力,世界各地的企业都依赖它来处理关键任务工作负载。 Oracle Database Free 的资源限制为 2 个 CPU(前台进程)、2 GB 的 RAM 和 12 GB 的磁盘用户数据。该软件包不仅易于使用,还可轻松下载…...

【Kubernetes】常见面试题汇总(二十五)
目录 73.我们所有人都知道,从单片到微服务的转变解决了开发方面的问题,但却增加了部署方面的问题。公司如何解决部署方面的问题? 74.考虑一家拼车公司希望通过同时扩展其平台来增加服务器数量,公司如何有效地实现这种资源分配? …...

【踩坑】装了显卡,如何让显示器从主板和显卡HDMI都输出
转载请注明出处:小锋学长生活大爆炸[xfxuezhagn.cn] 如果本文帮助到了你,欢迎[点赞、收藏、关注]哦~ 背景介绍 装了显卡后,开机默认是从显卡的HDMI输出,但这很不方便。如何让视频仍然从主板输出?或者说让显卡HDMI和主板…...

spring boot启动报错:so that it conforms to the canonical names requirements
springboot 2.x的版本中对配置文件中的命名规范有了强制性的要求,如下图所示中的dataSource属性属于驼峰格式,但是在springboot 2.x中不允许使用驼峰形式。 根据错误提示可知将其使用 - 来分割即可 错误信息的含义:“Canonical names should…...

unix中如何查询和修改进程的资源限制
一、前言 一个进程在运行时,会用到各种资源,比如cpu的使用时间、内存空间、文件等等。那么,一个进程能够占用多少资源呢?cpu使用的时间有多长?进程空间有多大?能够创建多少个文件?这个就是本文…...

【LeetCode每日一题】——401.二进制手表
文章目录 一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【题目提示】七【解题思路】八【时间频度】九【代码实现】十【提交结果】 一【题目类别】 回溯 二【题目难度】 简单 三【题目编号】 401.二进制手表 四【题目描述】 二进制手表顶部…...

ROM和RAM的区别
ROM(Read-Only Memory,只读存储器)和RAM(Random Access Memory,随机存取存储器)是计算机系统中两种不同类型的存储技术,它们在功能、用途和特性上有显著的区别: 1. 存储数据的持久性…...

tomcat的配置
tomcat8最佳配置 <Executor name"tomcatThreadPool" namePrefix"catalina-exec-"maxThreads"500" minSpareThreads"100" prestartminSpareThreads"true"/><Connector executor"tomcatThreadPool" port&…...

SQL使用IN进行分组统计时如何将不存在的字段显示为0
这两天被扔过来一个脏活儿:做一个试点运行系统的运营指标统计。 活儿之所以称为“脏”,是因为要统计8家单位共12个项目的指标。而每个项目有3个用户类指标,以及分17个功能模块,每个功能模块又分5个维度的指标。也就是单个项目是1…...

MoCo对比损失
MoCo(Momentum Contrast,动量对比学习)是一种自监督学习方法,由Facebook AI Research提出,主要用于无监督学习视觉表示。在MoCo中,对比损失(Contrastive Loss)扮演着至关重要的角色&…...

01_WebRtc_一对一视频通话
文章目录 通话网页的设计客户端实现Web的API 服务端实现 2024-9-20 很久没有写博客啦,回顾总结这段时间的成果, 写下博客放松下(开始偷懒啦)主要内容:实现网页(html)打开摄像头并显示到页面需要…...

【小程序 - 大智慧】深入微信小程序的渲染周期
目录 前言应用生命周期页面的生命周期组件的生命周期渲染顺序页面路由运行机制更新机制同步更新异步更新 前言 跟 Vue、React 框架一样,微信小程序框架也存在生命周期,实质也是一堆会在特定时期执行的函数。 小程序中,生命周期主要分成了三…...

《深入了解 Linux 操作系统》
在计算机领域中,Linux 作为一种强大而重要的操作系统,有着广泛的应用场景,尤其在服务器端占据着举足轻重的地位。 一、Linux 简介 Linux 是一种操作系统,主要应用于服务器端。不同的厂商或个人会对 Linux 的内核进行封装ÿ…...

批评他人也需要技术
俗话说“人无完人,尺有所短,寸有所长”,每个人都有可能犯错误。我们犯错误,并不能说明我们一无是处;一个人做了一件好事,也不能说他做的每件事都是好的。 营造良好的氛围。一说到批评,我们许多…...

安装SQL Server遇到的问题
出现了一和二的问题,最后还是通过三完全卸载sqlserver安装成功了 一.安装过程中依次报错 1.MOF编译器无法连接WMI服务器。原因可能是语义错误(例如,与现有WMI知识库不兼容)或实际错误(例如WMI服务器启动失败)。 2.PerfLib 2.0计数器removal失败…...

java项目之编程训练系统源码(springboot)
风定落花生,歌声逐流水,大家好我是风歌,混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的编程训练系统。项目源码以及部署相关请联系风歌,文末附上联系信息 。 项目简介: 编程训练系统的主要使用者管…...

MySQL的登陆错误:ERROR 1049 (42000): Unknown database ‘root‘
MySQL的登陆错误:ERROR 1049 (42000): Unknown database ‘root’ 安装MySQL的时候,到网上查的命令行登陆MySQL的方法都是mysql -u root -p password mysql -r root -p 123456但是奇怪的是这条命令我输进去死活都不对,它都会要求再输入一遍…...

vue使用vue-i18n实现国际化
我使用的是vue2.6版本,具体使用其他版本可以进行修改 一、安装 npm install vue-i18n -D 二、配置 1、文件配置 ①在src下创建 i18n 目录 ②在 i18n 目录下创建 langs 文件夹 和 index.js文件,具体如下 2、index.js代码如下,这里使用了…...

微信小程序如何设置左侧导航栏跟随页面滑动
一、使用 scroll-view 组件实现页面滚动 在页面的 wxml 文件中,将需要滚动的内容包裹在scroll - view组件内,例如: <scroll-view scroll-y"true" style"height: 800rpx;"><!-- 这里放置页面的主要内容 -->…...