【问题标题】:How to rasterize (in a jupyter notebook) using GDAL/OGR , crs of vector file in EPSG: 4326如何使用 GDAL/OGR 栅格化(在 jupyter 笔记本中),EPSG 中矢量文件的 crs:4326
【发布时间】:2021-07-19 13:08:29
【问题描述】:

我试图在 python 中栅格化矢量文件。

我使用了这个代码:

gdal.Grid("trial2.tif","merged2018-19.gpkg",zfield="h_li",algorithm="nearest")

(矢量数据的crs在EPSG中:4326)

  1. 在 jupyter 中绘制矢量文件时,它显示了坐标 X轴:74到78(经度值) Y轴:35到38(纬度值)

使用此代码进行光栅化后 X 轴:0 到 250 Y轴:250到0

即它的 crs 值丢失了(我猜)

  1. 它创建了一个光栅文件,但像素分辨率(0.015625 度,0.01171875 度)足够大。

这里如何调节像素大小。

【问题讨论】:

    标签: python jupyter-notebook gdal rasterizing ogr


    【解决方案1】:

    您可以使用outBoundswidth/height 关键字来控制输出分辨率。例如,如果您希望输出分辨率为 0.005 度,您可以将这些定义为:

    gdal.Grid(
        "trial2.tif","merged2018-19.gpkg", zfield="h_li",algorithm="nearest",
        width=600, # --- width of the output raster in pixel
        height=800, # --- height of the output raster in pixel
        outputBounds=[74, 38, 78, 35], # --- assigned output bounds: [ulx, uly, lrx, lry]
    )
    

    您可以通过将宽度/高度(以度为单位)除以分辨率来获得宽度/高度(以像素为单位)。

    600 = 3/0.005
    800 = 4/0.005
    

    如果输出CRS设置不正确,也可以考虑添加outputSRS="EPSG:4326"

    顺便说一句,术语“栅格化”通常用于将矢量特征转换为栅格表示(“像素化”)。这是通过gdal.Rasterize 完成的。使用gdal.Grid 将插入数据(也在特征之间创建输出值)。

    【讨论】:

      猜你喜欢
      • 2012-05-15
      • 2012-12-28
      • 2010-09-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多