<div dir="ltr">import gdal, numpy as np<br>from gdalconst import *<br><br>infile = r"D:\given.tif"<br>inraster = gdal.Open(infile, GA_ReadOnly)<br>x_total,y_total=refraster.RasterXSize,refraster.RasterYSize<br>n_chunks=10<br>x_offsets=np.linspace(0,x_total,n_chunks).astype(int)<br>x_offsets=zip(x_offsets[:-1],x_offsets[1:])<br>y_offsets=np.linspace(0,y_total,n_chunks).astype(int)<br>y_offsets=zip(y_offsets[:-1],y_offsets[1:])<br><br>outfile =  r"D:\result.tif"     <br>outraster = gdal.GetDriverByName('GTiff').Create(outfile,y_total,x_total,1,gdal.GDT_Float32)<br>for x1,x2 in x_offsets:<br>    for y1,y2 in y_offsets:<br>        values = refraster.GetRasterBand(1).ReadAsArray(x1,y1,x2-x1,y2-y1)  <br>        outraster.GetRasterBand(1).WriteArray(values, x1, y1)<br>inraster, outraster = None, None <br><br>I got the following error:<br><br>Traceback (most recent call last):<br>  File "D:\test.py", line 20, in <module><br>    outraster.GetRasterBand(1).WriteArray(values, x1, y1)<br>  File "C:\Python27\lib\site-packages\osgeo\gdal.py", line 1167, in WriteArray<br>    return gdalnumeric.BandWriteArray( self, array, xoff, yoff )<br>  File "C:\Python27\lib\site-packages\osgeo\gdal_array.py", line 304, in BandWriteArray<br>    raise ValueError("array larger than output file, or offset off edge")<br>ValueError: array larger than output file, or offset off edge<br><br>How can I correct the writeArray?</div>