我在GDAL/中遇到此错误问题
INPUT_raster = "E:\myraster.asc"
ds = gdal.Open(INPUT_raster, gdal.GA_ReadOnly)
band = ds.GetRasterBand(1)
data = band.ReadAsArray(9658, 11599, 1, 1)
ERROR 5: E:\myraster.asc, band 1: Access window out of range in RasterIO(). Requested
(9658,11599) of size 1x1 on raster of 9658x16934.
是否可以使用try:和Expect:避免此错误?
非常感谢您的意见/建议。
问候,
詹妮
最佳答案
尝试/期待不要避免错误,他们会处理错误。
您正在尝试从栅格中不存在的位置读取数据。 x尺寸为9658个元素大,如果希望最外面的元素,则应使用9657,因为索引从零开始。
因此使用:
data = band.ReadAsArray(9657, 11599, 1, 1)
或最后一个x位置:
data = band.ReadAsArray(ds.RasterXSize-1, 11599, 1, 1)
关于python - Python : GDAL ERROR - Access window out of range in RasterIO(),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17747726/