[Qgis-user] Metis and creating pyramids

Maciej Sieczka tutey at o2.pl
Tue Jul 29 07:44:28 PDT 2008


Micha Silver pisze:
> Maciej Sieczka wrote:

>>> $ gdal_translate -of GTiff -co "TILED=YES" -co "BLOCKYSIZE=1"
>>> Yotvata.jpg Yotvata.tif
>>> Input file size is 8017, 5532
>>> 0ERROR 1: _TIFFVSetField:Yotvata.tif: Bad value 1 for "TileLength"
>>> ERROR 9: Bad tile width/length parameters; copying failed

>> Here's the problem: you can't use TILED=YES and BLOCKYSIZE=1 together.

> I guess I don't understand what BLOCK[X|Y]SIZE means. I thought it 
> determines the resolution of the tiles.

I had the same problem once :). Here's the explanation [1].

>> Wrong. The improvement comes from the fact that gdalwarp too
>> *creates a stripped TIFF by default*, same as gdal_translate.
>> Whether the TIFF has a correct *CRS header* or not *is not an
>> issue*.

> In that case, I can't explain why there's such a big change in
> display time (ten times faster) between a tiff created with
> gdal_translate -co "TILED=NO" and the next tiff created with
> gdalwarp.

On my box, a 360 MB stripped TIFF displays circa 10 times faster than a
tiled one (1.5 sec vs 15 sec) - no matter if gdal_translate or gdalwarp
was used to create the TIFF. Hmm.

>> "TILED=NO" implies a *stripped* TIFF, not *TILED*. I suppose you
>> got the things mixed at copy/paste, and that should actually be
>> "TILED=YES", right? Then your comment would make sense.

> Here's a summary of the experiments I tried:
> jpeg-> tiff with TILED=YES          loads in 40 secs
> jpeg-> tiff with TILED=NO           loads in 20 secs

I don't confirm such behavior on my box. A stripped TIFF alway renders
much faster, no matter how created...

> tiff(TILED=YES)->gdalwarp           loads in 2 secs
> tiff(TILED=NO)->gdalwarp            loads in < 2 secs

... and a tiled TIFF always renders ways slower than stripped for me.

Maybe you don't take overviews into account? A TIFF with overviews
renders about the same quick in QGIS regardless of if it's stripped or
tiled.

Also, you use term "load". I'm talking about the render time. I load the
raster into QGIS and measure the time after pressing the refresh button
(to eliminate hard disk latency).

And are you sure your CPU is not busy with anything else at the moment
you do the measurments?

Where do you take the numbers from? I just copy them from QGIS console
output, but that maybe requires QGIS built with debugging on.

Below are my details anyway. The output is circe 360 MB TIFF in all cases:

COMMAND SYNTAX                                    QGIS RENDER TIME

gdal_translate -co "TILED=YES"                    13.465
gdalwarp -co "TILED=YES"                          13.5

gdal_translate -co "TILED=NO" -co "BLOCKYSIZE=1"  1.353
gdalwarp -co "TILED=NO" -co "BLOCKYSIZE=1"        1.29



Maciek

[1]http://www.nabble.com/forum/ViewPost.jtp?post=18059426&framed=y

-- 
Maciej Sieczka
www.sieczka.org





More information about the Qgis-user mailing list