如何使用csv点用gdal创建不规则栅格
How to create irregular raster with gdal using csv points
我正在尝试从 csv 点列表(xyz 数据)创建不规则形状的 .tiff。我正在使用 gdal_grid.
我似乎可以毫无问题地生成 .tiff 文件,但我无法保留原始 csv 点的轮廓/形状。
每次我生成 .tiff 文件时,它都会创建一个大小为 (xmax-xmin) x (ymax-ymin) 的栅格,并将插值分配给远离初始点的像素。
是否可以只生成我提供的点的 .tiff 文件?
对于上下文,我正在尝试为河流生成 xyz 数据栅格,并且只需要河流中的栅格(而不是河流的整个边界框)。我只提供河流中的xyz数据。
我尝试使用 -nodata 标志,并将 -max_points 限制为我提供的点数。
我的最终代码(导入并声明所有内容后):
gdal_grid -a invdist:power=2.0:smoothing=1.0:nodata=-999:max_points=2128164 -txe 582387.4 591069.4 -tye 4505028.08 4515344.079999999 -outsize 50 50 -zfield "z" -of GTiff -ot Float64 -l Book2 Book2.vrt Book2.tiff
欢迎来到 Stack Overflow,Derek!
也许 gdal_grid 中有一个创建选项可以做到这一点,但我认为您必须通过额外的计算才能达到预期的结果:
- 运行 gdal_grid 如你所愿。
- 根据给定的点创建 concave hull。如果这是一次性工作,我建议使用 QGIS(带草地工具),因为需要对凹包参数进行一些调整。
- 使用 gdalwarp 使用创建的 shapefile 切割栅格。
如果这让你通过了,请告诉我!
我正在尝试从 csv 点列表(xyz 数据)创建不规则形状的 .tiff。我正在使用 gdal_grid.
我似乎可以毫无问题地生成 .tiff 文件,但我无法保留原始 csv 点的轮廓/形状。
每次我生成 .tiff 文件时,它都会创建一个大小为 (xmax-xmin) x (ymax-ymin) 的栅格,并将插值分配给远离初始点的像素。
是否可以只生成我提供的点的 .tiff 文件?
对于上下文,我正在尝试为河流生成 xyz 数据栅格,并且只需要河流中的栅格(而不是河流的整个边界框)。我只提供河流中的xyz数据。
我尝试使用 -nodata 标志,并将 -max_points 限制为我提供的点数。
我的最终代码(导入并声明所有内容后):
gdal_grid -a invdist:power=2.0:smoothing=1.0:nodata=-999:max_points=2128164 -txe 582387.4 591069.4 -tye 4505028.08 4515344.079999999 -outsize 50 50 -zfield "z" -of GTiff -ot Float64 -l Book2 Book2.vrt Book2.tiff
欢迎来到 Stack Overflow,Derek!
也许 gdal_grid 中有一个创建选项可以做到这一点,但我认为您必须通过额外的计算才能达到预期的结果:
- 运行 gdal_grid 如你所愿。
- 根据给定的点创建 concave hull。如果这是一次性工作,我建议使用 QGIS(带草地工具),因为需要对凹包参数进行一些调整。
- 使用 gdalwarp 使用创建的 shapefile 切割栅格。
如果这让你通过了,请告诉我!