错误消息“属性错误:尝试将numpy数组转换为GeoTiff时,“DatasetReader”对象没有属性“open

2j4z5cfb  于 2023-03-18  发布在  其他
关注(0)|答案(1)|浏览(83)

我想知道是否有人可以帮助我处理我收到的错误消息。首先,请允许我简要介绍我的工作流程
1.通过www.example.com导入的光栅图像rasterio.open
1.通过www.example.com将栅格转换为数组raster.read(波段号)
1.我对数组做了一些计算
1.尝试将最终结果转换为geotiff
但当我试图执行我的代码时,我收到以下错误消息:

**属性错误:“DatasetReader”对象没有属性“open”

这是我的密码

# Get necessary information
driver = "GTiff"
nlines = raster.height
ncols = raster.width
nbands = raster.count
data_type = "float32"
crs = raster.crs
transform = raster.transform
count = raster.count
file_name = "C:/file_path/file_name.tif"
 

#Writing the GeoTiff
with raster.open("C:/file_path/file_name.tif", "w",
                             driver = driver,
                             height = height,
                             width = width,
                             count = count,
                             dtype = dtype,
                             crs = crs,
                             transform = transform) as dst:
    dst.write(raster_array)

尝试将numpy数组写入为GeoTiff
即使检查我的数据是一个numpy数组,答案也是TRUE

kdfy810k

kdfy810k1#

您的问题看起来像是打字错误。编写GeoTiff时,您应该引用rasterio,而不是raster,后者似乎确实是您的源数据。

#Writing the GeoTiff
with rasterio.open("C:/file_path/file_name.tif", "w",
                         driver = driver,
                         height = height,
                         width = width,
                         count = count,
                         dtype = dtype,
                         crs = crs,
                         transform = transform) as dst:
dst.write(raster_array)

相关问题