Questions tagged «spatial-analyst»

Spatial Analyst是ArcGIS中的扩展,提供了一系列空间建模和分析工具。

6
加速以ArcGIS工具运行的Python脚本的方法[关闭]
这是一个非常普遍的问题。我只是想知道GIS程序员使用了哪些技巧来加快导入到工具箱中并运行的arcpy脚本。 我每天都在工作,编写一些小的脚本来帮助我办公室的非GIS用户处理GIS数据。我发现,ArcGIS 10.0的处理通常比9.3.1慢,并且有时在运行python脚本时会变得更慢。 我将列出一个脚本的特定示例,该脚本需要24个小时才能运行。这是一个循环,针对缓冲区中的每个形状将缓冲区中的栅格区域制成表格。缓冲区大约有7000个形状。我不认为它应该运行这么长时间。一种 while x <= layerRecords: arcpy.SetProgressorLabel("Tabulating Row: " + str(x) + " of " + str(ELClayerRecords)) arcpy.SelectLayerByAttribute_management(Buff,"NEW_SELECTION", "Recno = " + str(x)) # Selecting the record TabulateArea(Buff, "Recno", MatGRID, "VALUE", ScratchWS + "/tab" + str(z) +".dbf", nMatGRIDc) # Tabulate the area of the single row arcpy.AddMessage (" …

7
从高分辨率LiDAR DEM创建精确的排水网络(和集水区)的方法?
这不是我第一次偶然发现这个问题。看来我无法从全分辨率(1m个像元)的LiDAR数据中生成正确的排水网络模型和集水区。 当我对LiDAR数据集进行泛化,将其转换为整数DEM并填充接收器时,一切都很好,并且我可以轻松创建看起来非常泛化的模型。但是,我想为大型地图生成详细的站点模型,而这正是我遇到的问题。 我应该指出,大多数问题发生在平坦地区。 我希望排水管网能够准确地跟踪地形,但是当我使用整数DEM输入创建排水管网时,生成的流非常普通,并且经常在不应该连接的区域“断开连接”。溪流甚至没有紧紧跟随地形中的自然山脊。还有很多“孤立”或“无处可去”的细分。当我使用浮点DEM输入时,生成的排水网络是详细而准确的,但与孤立流的连接非常疏离,成簇且“乱丢”。 我怀疑我的问题出在数据准备中。整数vs浮点栅格DEM输入,正确填充汇等,还是我必须以某种方式处理表面数​​据才能首先创建“水文学上正确的”输入DEM? 有人可以描述使用高分辨率LiDAR创建连续排水网络和集水区的正确方法吗? 就目前而言,我从整数DEM输入创建模型方面取得了更大的成功。但是,这对于详细的大规模分析而言并不理想: 第一个附加图像是由整数DEM输入生成的模型。圈出了几个明显的问题区域。请注意,实际上似乎是主要排水通道中有溪流。我添加了一个非常通用的流版本。 编辑:正如我已经提到的,我已经从整数DEM输入创建模型取得了更大的成功。以下屏幕截图说明了为什么会这样。尽管整数DEM输入存在许多问题(如上所示),但它仍会产生排水网络,尽管不符合地形特征,但排水网络的连通性较小。正如您在下面的图像中直接看到的那样,使用浮点DEM输入会生成一个非常断开的群集网络,上面充满了小的孤立段。 从浮点DEM生成的流量累积栅格 由整数DEM生成的流量累积栅格 据我推断,这两种方法均会产生截然不同的结果,这两种方法都无法用于详细的模型。 编辑:我为使这篇文章越来越长而道歉(也许我没有用英语清楚地表达自己)为了进一步说明使用浮点DEM作为输入的问题,我将附加结果流链接输出以及结果分水岭。我期望的是一个连续的河流网络,整个盆地覆盖的整个区域相互流入。 从浮点输入DEM产生的Stream Link: 从浮点输入DEM产生的流域盆地: 这是一个示例(附近区域,相同的数据),其中流域的整个流向由于使用整数DEM输入而发生了变化:红色箭头是模型的流向,蓝色箭头指示实际流向。(蓝线-实际流,红色网络是LiDAR派生的流网络Strahler顺序) 数据链接:https : //www.yousendit.com/download/MEtSOGNVNXZvQnRFQlE9PQ (将于2011年5月13日到期)

3
使用ArcGIS Spatial Analyst计算栅格集的连续像素值?
我正在将ArcGIS 10与Spatial Analyst结合使用。 我有一组栅格(总共8个),每个栅格的每个像元都包含1或0。每个栅格代表不同年份的数据。出于争论,从第1年到第8年。 我可以将所有栅格加在一起,这将为我提供一个最终栅格,其值的范围为0到8。8表示该栅格集(所有年份)的像元始终为1。 我想找出每个单元格中最长的连续数字1。 因此,例如,整个网格可以为单个单元格记录一个值,例如5,但在8个网格中,该单元格具有最大的连续1等于3。或者另一种表示方式是3年内该单元格为1然后它开始在零和一之间振荡。 我的栅格处理技能不如矢量处理技能那么热,我对ESRI帮助文件已有很好的了解,但是我不知道要使用现成的地理处理工具如何实现这一目标? 有任何想法吗?

3
在建模栅格最小成本路径时处理桥梁和隧道?
我目前正在使用ArcGIS 10 Spatial Analyst的“成本路径”工具对行人路线进行建模。我有人行道,围栏,建筑物和大量的行人比例尺要素,所有这些都组合成成本面,其中人行道的成本低廉,公园略高,人行横道仍高,建筑物,围栏等是障碍。该模型非常适用于定义最佳路线,相互比较路线,评估区域的可步行性以及建立人行道。 但是我有一个主要问题:桥梁和隧道。因为成本表面将所有要素强制到一个2D平面中,所以我无法为人行道穿过人行道的街道建模。我必须选择应该裁掉的人。一种替代方法是查找城市中的所有桥梁和隧道,并对下/上/下的所有组合进行建模,但是该模型要永久运行!是否存在可以在3D模式下执行成本最低的第三方工具,还是我错过了某种解决方法?

3
将多个SpatialPolygonDataFrames合并到R中的1个SPDF中?
我在QGIS中创建了2个多边形。在R中使用它们,多边形将自动变为SpatialPolygonsDataFrame(SPDF)。我想将它们合并为单个SPDF(这在ArcGis中使用Tool Merge极为简单)。我确信应该有一种简单的方法来完成R中的操作,但是我找不到方法。该合并功能似乎只合并data.frames,聚合函数溶解多个多边形为一个SHP,gIntersect(由打字加入功能)返回逻辑值,而不是在所有的SPDF。 数据可在此处获取:http : //ulozto.cz/xpoo5jfL/ab-zip library(sp) library(raster) library(rgeos) library(spatstat) library(rgdal) library(maptools) setwd("C:/...") a<-readOGR(dsn=getwd(), layer="pol.a") b<- readOGR(dsn=getwd(), layer="pol.b") ab<-merge(a, b) # what tool if not "merge" to use??

3
最近邻图像重采样在ArcGIS中如何工作?
我试图了解用于重新采样图像数据集的最近邻居在ArcGIS中的工作方式。 输出栅格像元值是输入栅格中最接近的像元值的值: 在这种情况下,每个输出像元的中心是每个3x3输入像元的中间像元。 如果它们都在相同的距离会怎样?如果输出的尺寸为输入尺寸的一半,则输出的中心到最接近的4个相邻输入单元的距离相同。 InRas1=6x6 OutRas=3x3 他获得了大多数的细胞价值?没有 还是我在这里想念什么?



1
剪辑(数据管理)或按遮罩提取(空间分析)更有效吗?
我正在尝试将正射影像剪切到县边界。我一直在使用“按蒙版提取工具”,但是此过程已经运行了大约12个小时!它已经经历了2个周期,所以我假设这是每个频段。如果我做错了,有人可以纠正我。 数据管理中的剪辑会更好(更快)工作吗?精度如何? 我一直尝试使用按面膜提取,但这花费了太长时间。

4
将接触角的多边形合并为一个要素
我已经从栅格创建了一个多边形图层,并且每个多边形只有一个分类ID(和计算的英亩数)。我想将所有接触的特征“溶解”为较大的单个多边形。以红色圈出的3个区域(如下)包含仅接触正方形点的绿色多边形/像素。直观地(从最终用户的角度来看),应该将圆圈区域内的所有绿色多边形连接起来并视为一个多边形,因为在要素/单元格不接触的地方没有“中断”。 使用ArcGIS完成“合并”或“溶解”所有这些功能的最佳方法是什么?我有ArcInfo和Spatial Analyst扩展。如果在Spatial Analyst中有更好的方法可以做到这一点,我也可以用这种方式预处理多边形。

3
使用ArcGIS Desktop查找栅格中最大值的位置?
使用ArcGIS 10,我有一个栅格,我想在其中找到栅格中最大值的像素,并以十进制度返回其位置(像素中心)。我想遍历此过程,返回栅格的第二个最高值的位置,然后返回第三个值,依此类推,如此一来,最后我得到了N个位置的列表,这些N个位置的栅格值最高。 我认为使用Python脚本最容易做到这一点,但是如果有更好的方法,我愿意接受其他想法。

2
使用ArcGIS Desktop从轮廓创建DEM?
我收到的轮廓很大,分为几个不同的子集。我将大多数子集合并在一起,在三个不同的文件中创建了更大的轮廓集。然后,我从轮廓shapefile创建了三个不同的栅格数据集,但是在此过程中,栅格具有许多不应该存在的零高程区域。 我如何摆脱这些零海拔地区,以建立一个更准确的数字高程模型? 我希望“地形到栅格”工具可以在不同轮廓之间进行插值以清理这些区域,但事实并非如此。但是,某些零海拔地区是在有溪流,池塘或水库的地方。


4
ArcGIS分水岭工具使用什么算法?
有谁知道ArcGIS分水岭工具(在Spatial Analyst软件包中)使用哪种算法? Esri网站上提供的信息很少...但是我怀疑这可能是某种深度/广度搜索。 我查看了以下ArcGIS Online帮助页面: 分水岭(空间分析师) 分水岭如何运作 是的,它使用流向栅格,但是遍历栅格使用什么算法? 请注意,我并不是在寻找“它使用D8 ..”的答案。...D8并不是真正的算法,而是可以帮助定义您将要使用的算法的模型。IE,您可以在深度优先搜索算法和/或广度优先搜索算法中实施D8方案

1
使用ArcGIS Spatial Analyst计算点到栅格中不同类的距离?
我正在寻找有关如何计算从点到栅格的不同类别的距离的一些建议。 具体而言,我在土地覆盖数据上覆盖了动物利用的观察点(点)。 对于每个点,我想计算到不同封面类型的最近像元的距离。 例如,如果某个点位于草地上,那么到最近的非草地单元的距离是多少。 我正在使用ArcGIS 10并具有Spatial Analyst许可证。 我认为栅格计算器可能是最好的方法,但是有人可以提供一个方程式来完成此任务吗?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.