我有一个很大的栅格文件(129600 x 64800像素),其中包含全球水域(1位值0和1),并尝试提取海洋和内陆水岸线。
我曾尝试使用ArcGIS和QGIS将栅格从栅格转换为折线,但是这需要花费一定的时间。
有谁知道更好/更快的方式(Python或R)或更好的工具来完成此任务?
更新资料
- R:rasterToContour可能是快速而精确的,但是如果您有一个非常大的数据集(如我的(8,398,080,000像素)),则需要非常大量的RAM(超过16GB),或者强制R在硬盘驱动器上进行更多处理,也将需要一段时间。
- Python / GDAL:gdal_poligonize创建多边形而不是折线
更新2
- R rasterToContour:rasterToContour不提供所需的结果。与ArcGIS(栅格到多边形,然后要素到线)相比,它没有提取确切的像素轮廓,如以下示例所示。
更新3
Python / GDAL:我已经在命令行上在测试数据集上针对ArcGIS运行gdal_polygonize,结果非常清晰:
- gdal:49秒
- ArcGIS:1.84秒