I've written some simple Python code to flip a raster in relation to the y-axis. The raster is 20000x19459 and has 4 bands of type Byte, and is written east to west (I have no idea why). The script proceeds normally for the first 2 bands, but slows way down after starting band 3. I let it run overnight, and it had processed less than 1000 columnsin band 3, whereas the previous pace for bands 1&2 was around 1000 columns every 10 seconds. Here is the relevant code with a few debugging statements followed by the gdalinfo output. The only thing I'm noticing is that the input image is INTERLEAVED=BAND whereas the output is INTERLEAVED=PIXEL. Any help is appreciated.
------------------------------------------------------------------------------ for band in range(1, indataset.RasterCount + 1): ## Print the current band print 'Band %s' % band inband = indataset.GetRasterBand(band) outband = outdataset.GetRasterBand(band) count = 0 print count for i in range(inband.XSize): ## print the current interval of 1k lines new_count = int(i / 1000) if new_count > count: print new_count count = new_count inline = inband.ReadAsArray(i, 0, 1, inband.YSize) outband.WriteArray(inline, inband.XSize - i - 1, 0) inline = None inband = None outband = None ------------------------------------------------------------------------------ Driver: GTiff/GeoTIFF Files: test.tif Size is 20000, 19459 Coordinate System is: GEOGCS["WGS 84", DATUM["WGS_1984", SPHEROID["WGS 84",6378137,298.257223563, AUTHORITY["EPSG","7030"]], AUTHORITY["EPSG","6326"]], PRIMEM["Greenwich",0], UNIT["degree",0.0174532925199433], AUTHORITY["EPSG","4326"]] Origin = (-175.536864949200321,33.666235092496755) Pixel Size = (-0.000062579160220,-0.000054370391310) Metadata: AREA_OR_POINT=Area Image Structure Metadata: INTERLEAVE=BAND Corner Coordinates: Upper Left (-175.5368649, 33.6662351) (175d32'12.71"W, 33d39'58.45"N) Lower Left (-175.5368649, 32.6082416) (175d32'12.71"W, 32d36'29.67"N) Upper Right (-176.7884482, 33.6662351) (176d47'18.41"W, 33d39'58.45"N) Lower Right (-176.7884482, 32.6082416) (176d47'18.41"W, 32d36'29.67"N) Center (-176.1626566, 33.1372384) (176d 9'45.56"W, 33d 8'14.06"N) Band 1 Block=20000x1 Type=Byte, ColorInterp=Red Mask Flags: PER_DATASET ALPHA Band 2 Block=20000x1 Type=Byte, ColorInterp=Green Mask Flags: PER_DATASET ALPHA Band 3 Block=20000x1 Type=Byte, ColorInterp=Blue Mask Flags: PER_DATASET ALPHA Band 4 Block=20000x1 Type=Byte, ColorInterp=Alpha
_______________________________________________ gdal-dev mailing list gdal-dev@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/gdal-dev