【问题标题】:How to save a new raster with the projections of the previous raster如何使用先前栅格的投影保存新栅格
【发布时间】:2021-08-23 01:29:40
【问题描述】:

我尝试在 Python 中创建一个算法,在其中输入地理参考栅格(已知坐标系),将其所有负值转换为零,然后使用初始图像的地理参考保存新图像。

import skimage.io
import pandas as pd
import numpy as np

pathhr = 'C:\\Users\\dataset\\S30W051.tif'
HR = skimage.io.imread(pathhr)
df1 = pd.DataFrame(HR)
HR_changed = df1[df1 < 0] = 0

#save function
savedata = df1.to_numpy()
skimage.io.imsave('C:\\Users\\dataset\\S30W051_TEST.tif', savedata)

但是当我在这个脚本的末尾保存我的栅格时,我得到了一个非地理参考的 TIFF 栅格。

如何保持与初始栅格相同的坐标系(不将输出栅格转换为本地坐标)?

我请求帮助解决这个问题。谢谢。

【问题讨论】:

    标签: python image coordinates raster gdal


    【解决方案1】:

    您可以使用rasterio 打开和保存您的 tiff 文件,并将初始栅格的元数据复制到新栅格。

    import rasterio as rio
    
    # Load the original image
    with rio.open(pathhr, 'r') as r:
        HR = r.read()
        meta = r.meta
    
    # Do any transformation you like (on the numpy array)
    HR_changed = HR[HR < 0] = 0
    
    # Save the changed raster
    with rio.open('C:\\Users\\dataset\\S30W051_TEST.tif', 'w', **meta) as dst:
        dst.write(HR_change)
    

    【讨论】:

      猜你喜欢
      • 2014-05-30
      • 2013-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-07
      • 2020-12-30
      • 2017-10-02
      相关资源
      最近更新 更多