在QGIS中处理许多栅格文件?


10

我有一个包含大量栅格文件的项目,但是它变得非常缓慢。我想知道哪种是处理所有这些问题的最佳方法。我只是对这些文件进行地理配准,以创建.wld文件(geoTiff更好?),而不是将它们作为栅格打开。我太天真了吗?

Answers:


18

这里有很多选择。

1)您可以通过创建虚拟栅格来处理多个文件,就像它们是一个文件一样。这可以通过选择“栅格”>“其他”>“构建虚拟栅格(目录)”菜单选项来完成。这将创建图像的马赛克(例如MapInfo中的无缝层或ArcGIS中的马赛克栅格层)。如果不创建金字塔,加载速度可能会很慢(请参见下文)。

2)我认为,最佳的性能提升将来自金字塔。您可以为每个栅格构建概述(金字塔)。这可以通过以下方法在QGIS中完成:a)打开“图层属性”并选择“金字塔”选项卡。您可以选择要使用的金字塔等级,是否要在文件中内置金字塔(也许最好先尝试取消选中此设置,因为它会更改选中的数据)和重采样方法(取决于数据)。

在此处输入图片说明

b)您也可以使用“栅格”>“其他”>“构建概述”菜单选项,一次性在多个数据集上创建金字塔。这允许批处理模式。它具有更多高级选项,最好阅读此网页以了解gdaladdo

在此处输入图片说明

我不确定哪种方法最适合您,但是反复试验是找出答案的最佳方法。我会测试:

1)为每个栅格文件构建金字塔,创建一个虚拟栅格,然后加载它。如果您需要分别加载特定文件,这将有所帮助。

2)建立虚拟栅格并在虚拟栅格上构建金字塔。这可能取决于您将多长时间添加一次更多的栅格文件,因为这样,每当您向虚拟栅格中添加新栅格时,都必须再次创建金字塔,但是我想如果您需要的话,它的性能会比上面更快一次加载它们。如果您需要一次加载所有栅格,这将有所帮助。

当然,您可以同时使用上述两种方法(取决于概述的压缩方式,这可能会创建大量数据,因此请注意存储空间)。

该网站上其他有趣的答案:

qgis和栅格映射在无缝层中

qgis-1-8-0-3-68-ram-2-4ghz-slowwwww-performance


2
尽管概述在查看,平移缩放等方面具有最大的差异,但是如果存在很多栅格图层,则使用虚拟栅格(如答案中所建议的那样)应该可以大大加快将项目加载到QGIS中的速度。
Torsti

1
使用虚拟栅格还可以节省每次加载所有栅格时都要手动设置每个栅格的投影的
可能性
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.