[gdal-dev] Multidimensional raster support in GDAL
Even Rouault
even.rouault at spatialys.com
Wed Oct 25 12:22:29 PDT 2017
On mercredi 25 octobre 2017 14:42:54 CEST Ari Jolma wrote:
> I'd like to first know / decide what would we mean by a
> "multidimensional raster"?
The current rasters handled by GDAL are already multidimensional, with the number of
dimensions being fixed to 2, and being 2 horizontal dimensions (X/Y, lon/lat). The idea here
would be to at least address the 3D (X,Y,Z / X,Y,T) and 4D case (X,Y,Z,T), and when you need to
do that, arbitrary number of dimensions is at hand.
The dimensions/ones here are mostly spatio-temporal ones, along which you can measure a
physical phenomenon (a temperature field measures at different position, elevation, time)
>
> What we now have as a raster is a dataset with one or more bands. The
> bands represent the data dimension and thus there is one of those
> (2D+1).
Bands do not represent a dimension. In OGC SIS
( http://docs.opengeospatial.org/is/09-146r6/09-146r6.html ) or WCS, bands are called fields
of a rangeType.
Bands are different from the above mentionned dimensions in which they do not really
consider an axis along which you have some consistency. Along the X/Y axis, you can mark
ticks every n meters. Along the "band axis", you will have a temperature field in Kelvin, a wind
direction in degrees, etc.
> Would we like to have more data dimensions? What Even sketches
> below is ND, but would we really want to have 2D + ND?
My scetch of ND intended to capture the current 2D case, as a particular case.
>
> Also now there is no unit for the data dimension and the value is
> strictly increasing positive integer,
> would we like to have an explicit
> unit
Was the GDALDataset::char* apszAxisUnit[nAxisCount] or GDALGridAxis::pszUnit in my
scetch
> and arbitrary value (double, date, time, ...)?
In my scetch, I had indeed some hesitation about the appropriate type for
adfAxisCoordinates array. I think that for the cases mentionned above (4D spatio-temporal)
we can always represent the coordinates along each axis as a double value. The case where
that's the less obvious is for date/time, but using some reference like the Unix Epoch.
Even
--
Spatialys - Geospatial professional services
http://www.spatialys.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/gdal-dev/attachments/20171025/b05d5f1e/attachment.html>
More information about the gdal-dev
mailing list