将栅格数字高程数据转换为矢量轮廓的常用方法是什么?


9

在研究中,我发现了许多相反的参考,它们从轮廓创建高程数据,但是与轮廓创建无关。最好是,我正在寻找诸如QGIS,Grass或命令行工具之类的开源解决方案,但是我愿意接受任何可以使我朝正确方向发展的建议。

我打算将轮廓数据带入矢量绘图应用程序以进行线格式设置,但是如果该应用程序也可以执行某些操作,则将节省大量时间。


3
您是否在qgis中查看菜单栅格->提取->轮廓?
库尔特(Kurt)2012年

谢谢,这和亚伦的建议差不多。效果很好。
Veazer 2012年

Answers:


10

如果要将DEM转换为轮廓线:

要将扫描的地形图转换为矢量轮廓线,Arcscan是其中最简单(也是最复杂)的程序之一。但是,有几种开源替代方案,包括有前途的GRASS方法:

从扫描的地图跟踪矢量轮廓

其他信息可以在这里找到:


谢谢,这似乎有效。我喜欢转换可以编写脚本的事实。我从QGIS中学到了很多东西。
Veazer 2012年

3

我认为GRASS模块r.contour比QGIS的r.contour具有更多的功能。例如,您可以设置提取轮廓的最大和最小级别。另外,它具有参数cut,使输出更加通用。


3

可以使用shell脚本或python轻松编写脚本的另一个开源选项是使用GDAL_Contour从dem文件生成轮廓。我获取了一些示例DEM数据,并运行了以下命令以生成10 m轮廓,另存为shapefile:

gdal_contour -b 1 -a elevation -snodata -9999 ns67ne.tif contour.shp -i 10

这些开关是:

  • -b 1 选择要处理的图像的波段,默认为1
  • -a elevation 是将要创建的轮廓高程属性的名称
  • -snodata -9999 告诉GDAL输入栅格中nodata像元的值,因此可以忽略它们
  • ns67ne.tif contour.shp 分别是输入文件和输出文件
  • -i 10 是每个轮廓之间的间距

2
显然,QGIS使用GDAL_Countor,因此就像QGIS充当GDAL_Contour的前端一样。
弗拉基米尔·

我不知道,很高兴知道!
2012年

1
QGIS不仅是gdal_contour的前端,而且还显示了它将运行的确切gdal_contour参数,并允许您在运行之前对其进行编辑。
Veazer,2012年
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.