[gdal-dev] Mosaic of multidimensional datasets of varying resolution
Even Rouault
even.rouault at spatialys.com
Sat Jul 6 01:17:55 PDT 2024
Hi,
> Dear list,
>
> I have a question about mosaicing multidimensional datasets (netCDF,
> Zarr etc). These are typically 2 or 3D grids with a time dimension
> from weather or ocean models (3 or 4D in total).
> Using a multidimensional VRT:
> https://gdal.org/drivers/raster/vrt_multidimensional.html
> it is possible to mosaic several arrays with shared dimensions along
> the time or spatial dimensions without resampling.
> I have a use case where I want to mosaic several datasets with
> varying spatial resolution, and possibly different dimension names and
> reference systems, both along the time dimension and the spatial
> dimensions (onto a common spatial 'grid'). The goal is to combine
> global models with local models of higher resolution and get a common
> combined multidimensional array (2 or 3D + time).
> This is more like a mixture of a classic 2D VRT:
> https://gdal.org/drivers/raster/vrt.html and the multidimensional VRT.
> I see that there is some new functionality for combining 2D parts of
> multidimensional datasets, with reprojection / resampling, in a
> "classic" VRT:
> https://gdal.org/drivers/raster/vrt.html#arraysource
> But this does not seem to exactly cover my use case. I would like
> to be able to do the 2D (or even 3D) mosaicing for the spatial part
> with reprojection / resampling to a common grid while also combining,
> and keeping, the time dimension. Bottom line, I guess, is that I would
> like to be able to use the functionality of <DerivedArray> on a
> 2D-part inside the <Source> element of <Array> in a multidimensional
> VRT (https://gdal.org/drivers/raster/vrt_multidimensional.html#vrt-multidimensional).
> Am I right in assuming that this is not possible "out of the box"
> with the current options provided by VRTDataset, so that I would need
> to write some code to cover the use case myself?
yes, you are right. What you want to do isn't currently possible out of
the box. Just porting the DerivedArray in a multidimensional VRT would
not be enough as GDALMDArray::GetResampled() only supports resampling to
a common grid on the 2D space. Resampling along the time dimension would
require extra development.
Even
>
> Best regards,
> Simon Kokkendorff
> Joint GEOMETOC Support Centre
> _______________________________________________
> gdal-dev mailing list
> gdal-dev at lists.osgeo.org
> https://lists.osgeo.org/mailman/listinfo/gdal-dev
--
http://www.spatialys.com
My software is free, but my time generally not.
More information about the gdal-dev
mailing list