Peder, The problem here is the lack of or very large tiles/blocks in the image. BandReadAsArray() was asked to read a whole 27989 x 62863 block into memory. That's 1.76 Giga pixels. Too big.
Greg Coats' tiff file had tiles of 512 x 512 size. Creating tiled tiffs is a good place to start. Use the -co TILED=YES option in gdal_translate to create tiled tiffs. Try Tim Sutton's page http://linfiniti.com/2009/09/image-mosaicking-with-gdal/ on his experience in image mosaicing. On Thu, Jan 28, 2010 at 1:43 PM, Peder Axensten <[email protected]> wrote: > I want to run gdal_merge (and another program I made, based on gdal_merge) > on rather large files -- typically 3-7 Gbytes. Not surprisingly I run into > problems. I'm not very experienced in Python, but am I right to assume that > the error below probably is an indication on a size problem? What is the > raster size restrictions in gdal/numpy? > > If this is a size problem, I thought I'd modify gdal_merge to process big > rasters by parts, probably stealing ideas from gdal_calc3 by Chris Yesson. > > Sorry if I'm not very specific, I'd appreciate any ideas from you > experienced guys. > > Best regards, > > Peder Axensten > Research engineer > > Swedish University of Agricultural Sciences > Forest Resource Management > Remote Sensing Laboratory > > > > mosaic$ gdal_merge.py -o test.img -n 65565 sverige_VolumeBirch.img > sverige_VolumeBeech.img sverige_VolumeOak.img > ERROR 2: Invalid dimensions : 27989 x 62863 > Traceback (most recent call last): > File > "/Library/Frameworks/Python.framework/general-site-packages/gdal-tools/gdal_merge.py", > line 431, in <module> > fi.copy_into( t_fh, band, band, nodata ) > File > "/Library/Frameworks/Python.framework/general-site-packages/gdal-tools/gdal_merge.py", > line 228, in copy_into > nodata_arg ) > File > "/Library/Frameworks/Python.framework/general-site-packages/gdal-tools/gdal_merge.py", > line 48, in raster_copy > nodata ) > File > "/Library/Frameworks/Python.framework/general-site-packages/gdal-tools/gdal_merge.py", > line 84, in raster_copy_with_nodata > t_xsize, t_ysize ) > File > "/Library/Frameworks/GDAL.framework/Versions/1.6/Python/site-packages/osgeo/gdal.py", > line 835, in ReadAsArray > buf_xsize, buf_ysize, buf_obj ) > File > "/Library/Frameworks/GDAL.framework/Versions/1.6/Python/site-packages/osgeo/gdal_array.py", > line 140, in BandReadAsArray > ar = numpy.reshape(ar, [buf_ysize,buf_xsize]) > File > "/Library/Frameworks/GDAL.framework/Versions/1.6/Python/site-packages/numpy/core/fromnumeric.py", > line 152, in reshape > return reshape(newshape, order=order) > ValueError: total size of new array must be unchanged > > _______________________________________________ > gdal-dev mailing list > [email protected] > http://lists.osgeo.org/mailman/listinfo/gdal-dev > -- Best regards, Chaitanya kumar CH. /tʃaɪθənjə/ /kʊmɑr/ +91-9848167848 17.241582N 80.142635E
_______________________________________________ gdal-dev mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/gdal-dev
