Michael,
Hi, can we specify overview sizes exactly?
No, the BuildOverviews() interface onlys take an array of overview
factors. It is up to the driver implementation to decide how it computes
the overview size from the main raster size and overview factor.
The COG driver is a bit of a special case, since it automagically
compute overviews if they don't exist in the source dataset, and doesn't
take an explicit list of overview factors. It simply divides by two
successively, with floor truncation:
https://github.com/OSGeo/gdal/blob/master/frmts/gtiff/cogdriver.cpp#L1092
I have this odd grid that is 36000x17999, and I get consequently yucky
overview sizes:
gdal_create -outsize 36000 17999 -ot Int8 -co SPARSE_OK=YES -a_srs
EPSG:4326 -a_ullr 0 17999 0 36000 weird.tif
gdal_translate weird.tif cog.tif -of COG
gdalinfo cog.tif | grep Overviews
# Overviews: 18000x8999, 9000x4499, 4500x2249, 2250x1124, 1125x562,
562x281, 281x14
Should I worry about this?
Probably not ? :-)
Can the sizes be specified via Translate? (I can see how they could be
generated externally and bundled, but I'm looking for a way at this
high level).
I guess someone could potentially add a OVERVIEW_SIZES=W1xH1,W2xH2,...
creation option to the COG driver if that was really needed...
( Maybe I shouldn't even care about the sizes ... and maybe I should
resample the grid to be a better overall size, but I consider that out
of scope here.)
I'm comparing with other COG creators, e.g. odc which makes tidy
overviews ( I will explore how it's getting done).
It looks like they might use (previous_size + 1) / 2 (or ceil rounding)
--
http://www.spatialys.com
My software is free, but my time generally not.
_______________________________________________
gdal-dev mailing list
gdal-dev@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/gdal-dev