栅格GIS(例如GRASS,ArcGIS / Spatial Analyst和Idrisi)可以执行一组广泛的数据处理和分析过程,这些过程通常称为“地图代数”。在当今的计算环境中,以许多不同的格式维护1亿个或更多像元的栅格并要求相对复杂的计算(例如视域,分水岭和地形识别以及图像处理功能)变得司空见惯。

似乎有许多开源,免费和廉价的解决方案。但是,实际上哪些在实践中成立?也就是说,哪些可以有效地处理大型网格,可以轻松地输入和输出数据,是否合理地没有错误以及可以提供完整的分析程序?您花了很多时间学习这些系统后才发现哪些陷阱或隐藏的限制? (最后一个问题是用Web搜索不容易回答的,我希望被访者可以在此提供有价值的建议。)

我对既可以与该产品很好地集成又可以与其竞争的解决方案特别感兴趣。流行(但价格昂贵)的商业系统(这意味着Windows兼容性很重要)。

评论

感谢所有提供答案的人;我发现他们每个人都很有用。 @scw的答案因涵盖多个不同选项而引人注目。

#1 楼

我无法与SAGA或其他一些系统交流,但是我已经广泛使用GRASS,包括对约720M像元进行全球范围的分析,这需要可靠地实施栅格代数和复杂的地形运算。 (顺便说一句,随着ArcInfo的停产,GRASS可以说是最长的持续开发的GIS。)

可以通过QGIS轻松访问GRASS数据和工具,它提供了不错的ArcView GUI类似物。 QGIS本身已经获得了很好的栅格分析功能,例如GDALTools插件,但是它们是相当新的并且缺乏GRASS本身的成熟度和深度。

另一个前景是R的栅格程序包:R具有庞大的用户群,方法的来源易于访问,并且它包括许多统计技术的最前沿。但是,它缺乏图像处理工具,可能不足以满足您感兴趣的任务。

最后,GDAL构成了许多(如果不是大多数)现代GIS系统的坚实基础,并且具有许多常见地图代数运算的非常快速的实现。当“层”抽象不足时,可以通过其Python接口或直接C / C ++使用它。

评论


我发现在QGIS中使用GRASS非常愉快。我上个月使用GRASS和QGIS进行了丛林大火项目,对此感到非常满意。

–内森·W
10-10-22在11:09

尝试以实际方式使用GRASS时遇到的最大障碍是将数据推入和移出其自定义文件格式。我真的希望它可以原位使用geotiff等。

–马特·威尔基
2010年11月8日20:00

对于R和GDAL + 1,R可以用于许多常规数组操作,并且具有rgdal支持,导入/导出效果很好-栅格可以使该过程和其他事情变得简单得多,但是更加接近R,并且rgdal中的内存不足链接可能会有所帮助,并且ff软件包支持内存不足阵列。

–mdsumner
2011-2-24在10:12

@matt:使用r.external,您可以随时注册栅格地图。无需导入为GRASS格式。在GRASS 7中,有r.external.out甚至可以立即以任何GDAL支持的格式写出。

– markusN
2011-2-24在20:30

@markus,感谢您让我知道可以直接使用非草绘栅格的方法。下次我有一些栅格分析需要做的时候,我一定会再做一次。

–马特·威尔基
2011-2-24在21:56

#2 楼

我们使用了一种混合物-来自Spatial Analyst,SAGA,Ermapper,还有一些GRASS,但最终我们倾向于使用Geosoft-尽管那是因为我们进行了大量的地球物理增强处理。 Spatial Analyst / ArcGIS很好,因为您可以轻松地通过工具箱/地理处理来扩展功能,但是我们发现实际的Spatial Analyst处理例程通常不是最好的。最近,我们已经建立了工具箱来从ArcGIS内访问SAGA模块,因此我们可以继续使用该功能而不必导入/导出-该工具箱会根据需要进行所有处理。我们可能还会考虑做类似的事情来访问GRASS功能

评论


答案很晚,但您是否已查看sextante(sextante.forge.osor.eu)。它包括SAGA和GRASS模块。它已被用作ArcGIS的工具箱。

– Ecodiv
2011-09-29 6:13

#3 楼

现在,您可以在具有PostGIS的空间数据库中使用几乎无限大小的栅格进行工作并进行制图。我个人处理SRTM和加拿大范围内的气候数据。我可以以非常快速和透明的方式在栅格图层和矢量图层之间进行相交。我还可以使用整套地图代数函数。

#4 楼

使用Surface Tools的流形在导入格式和处理大型栅格方面非常好,可以直接在匹配的栅格之间进行分析,也可以使用隐式重新投影进行分析。 GPU支持多种栅格功能,并通过多种脚本语言和SQL强烈支持自动化。价格好几百美元。

Surface Tools的常规文档:

http://www.georeference.org/doc/surface_tools.htm

以下是当前的清单“曲面变换”对话框可用的函数,该对话框接受自定义表达式以在多个栅格之间执行计算:

http://www.georeference.org/doc/transform_dialog_functions_and_operators.htm

一个陷阱是,不能对GeoTIFF进行“表面”(栅格)的导出(可以对图像进行导出)。我通常会导出到SDTS,然后使用GDAL将其转换为GeoTIFF。来自Manifold(自己)支持和其他系统(如GDAL家族)的坐标系的映射并不完美,但是问题很少见。

#5 楼

我听说有一些人在使用SAGA。但是我个人对此几乎没有经验。

http://www.saga-gis.org/en/index.html

评论


作为一个狂热的SAGA用户,并具有一定的开发经验,我必须补充:saga很好,但不适用于此处要求的用例:大的光栅文件。 SAGA将网格完全加载到内存中,这使得使用较小的网格非常快,但是一旦开始使用大型网格,则需要64位和大量内存。

– johanvdw
2011年1月6日在21:46



#6 楼

对于本文“通过重构的MODIS LST数据估算山区环境中的每日陆地表面温度(全文PDF),我在集群上以并行方式在GRASS GIS中轻松处理了11,000个MODIS LST图像。这很有趣,因为它可以正常工作。

#7 楼

我们使用SAGA监控剂量率和伽马光谱测量(机载或地面,自然背景,旧矿场等)处理过程中的数据。我有许多对我们有用的模块,我们非常喜欢。

PS:由于SAGA地图输出有其局限性,对于更高级的地图,我们将其与Quantum GIS相结合。

评论


谢谢!您能否扩大您的答复以表明您发现有用的内容以及可能存在的限制?

– hu
2011年6月11日在16:52

好的,我发现SAGA有很多工具非常有用,我们需要这些工具,而我们还拥有的其他SW(例如MapInfo)没有或不太友好(Geosoft)。与GRASS不同,SAGA本机可与相同的GIS文件(例如shapefile或asc网格)一起使用,并具有许多用于栅格分析和处理(剪切,排序,过滤...)的工具。这些限制例如在地图输出中-您无法修改布局,标题等。但这可以通过结合使用Quantum GIS和SAGA来解决。在SAGA中进行分析并在Quantum GIS中完成地图是没有问题的。

– Juhele
2011年6月17日12:36

#8 楼

为自己说,在这种情况下,我有偏见。但是我主要将IDRISI用于栅格GIS。很大程度上是因为将IDRISI与其他GIS软件进行比较后,它可以提供最全面的栅格分析工具。从各种分类和预测统计模型到分水岭和成本距离分析,它几乎具有我们日常栅格分析所需的一切。它还具有ArcGIS的扩展。它提高了处理大数据的能力。但是,还没有GIS软件真正能够在一分钟内计算出1000000 x 1000000的成本距离。