[GRASS-dev] TIFF output size: r.out.gdal vs gdal_translate

Maciej Sieczka tutey at o2.pl
Wed Aug 20 07:57:47 EDT 2008


Markus Metz pisze:
> Maciej Sieczka wrote:

>> I've noticed that r.out.gdal creates GeoTIFFs significantly larger than
>> gdal_translate. Could this be avoided?

> Not completely, but file sizes are near identical (see below) in this
> version:
> http://markus.metz.giswork.googlepages.com/r.out.gdal.conservative.tar.gz
 >
> The fix is to first create a new GDAL raster in memory and then copy the
> raster to the desired output format, after GDAL API Tutorial
> http://www.gdal.org/gdal_tutorial.html
 >
> I guess, when GDAL creates a new raster instead of copying a raster, it
> reserves a bit of extra space just in case. Maybe this is analogous to
> gdalwarp as explained in [1,2].

>> Applying compression makes the difference more distinct:
>>
>> $ r.out.gdal in=landcover.30m out=landcover.30m.tif type=Byte
>> createopt="COMPRESS=DEFLATE"
>> $ ls -l landcover.30m.tif
>> -rw-r--r-- 1 shoofi shoofi 51338 sie 20 11:50 landcover.30m.tif
>>
>> $ gdal_translate -co "COMPRESS=DEFLATE" landcover.30m.tif
>> landcover.30m_gt.tif
>> $ ls -l landcover.30m_gt.tif
>> -rw-r--r-- 1 shoofi shoofi 47567 sie 20 11:51 landcover.30m_gt.tif

> Same commands give sizes 46275 for r.out.gdal and 46261 for gdal_translate.
> I did not export the colortable, thus the smaller file sizes on my system.
> 
> The size difference is in both cases now 14 bytes instead of about 3000
> bytes.

Cool! The size difference due to colortable is a non-issue.

I can't invest time in testing Markus's modifications thorougly, but
this particular improvement would be great to have.

>> (Probably related to [1]. Some more info in a duplicate [2].)
>>
>> [1]http://trac.osgeo.org/gdal/ticket/1688
>> [2]http://trac.osgeo.org/gdal/ticket/1689).

Maciek

-- 
Maciej Sieczka
www.sieczka.org


More information about the grass-dev mailing list