[gdal-dev] Using geolocation arrays

Michael Sumner mdsumner at gmail.com
Fri Sep 26 07:23:08 PDT 2025


I asked about a similar issue a while back where the answer was on the fly
scaling with vrt:// and  *type conversion*, and constructing the
geolocation array scheme with those, might be helpful :
https://github.com/OSGeo/gdal/issues/8404

Cheers, Mike



On Sat, Sep 27, 2025 at 12:06 AM Laurențiu Nicola via gdal-dev <
gdal-dev at lists.osgeo.org> wrote:

> Hi,
>
> I have a NetCDF-style product with a separate geolocation dataset I'm
> trying to convert to something more easy to work with. Not sure if it
> matters, but the geolocation arrays are scaled. I tried to unscale them
> first:
>
> $ cat lat.vrt
> <VRTDataset rasterXSize="4865" rasterYSize="4090">
>   <VRTRasterBand dataType="Float32" band="1" blockXSize="973"
> blockYSize="818">
>     <NoDataValue>-2147483648</NoDataValue>
>     <Scale>1e-06</Scale>
>     <SimpleSource>
>       <SourceFilename relativeToVRT="1">NetCDF:geo_coordinates.nc:
> latitude</SourceFilename>
>       <SourceBand>1</SourceBand>
>       <SourceProperties RasterXSize="4865" RasterYSize="4090"
> DataType="Int32" BlockXSize="973" BlockYSize="818" />
>       <SrcRect xOff="0" yOff="0" xSize="4865" ySize="4090" />
>       <DstRect xOff="0" yOff="0" xSize="4865" ySize="4090" />
>     </SimpleSource>
>   </VRTRasterBand>
> </VRTDataset>
>
> $ gdal_translate -unscale -ot Float32 lat.vrt lat.tif
>
> # same for lon.{vrt,tif}
>
> Then I made a VRT for the main dataset:
>
> <VRTDataset rasterXSize="4865" rasterYSize="4090">
>   <Metadata domain="GEOLOCATION">
>     <MDI key="X_DATASET">lon.tif</MDI>
>     <MDI key="X_BAND">1</MDI>
>     <MDI key="Y_DATASET">lat.tif</MDI>
>     <MDI key="Y_BAND">1</MDI>
>     <MDI key="PIXEL_OFFSET">0</MDI>
>     <MDI key="LINE_OFFSET">0</MDI>
>     <MDI key="PIXEL_STEP">1</MDI>
>     <MDI key="LINE_STEP">1</MDI>
>   </Metadata>
>   <VRTRasterBand dataType="UInt16" band="1" blockXSize="1217"
> blockYSize="1023">
>     <NoDataValue>65535</NoDataValue>
>     <Scale>0.01394645962864161</Scale>
>     <SimpleSource>
>       <SourceFilename relativeToVRT="1">Oa01_radiance.nc</SourceFilename>
>       <SourceBand>1</SourceBand>
>       <SourceProperties RasterXSize="4865" RasterYSize="4090"
> DataType="UInt16" BlockXSize="1217" BlockYSize="1023" />
>       <SrcRect xOff="0" yOff="0" xSize="4865" ySize="4090" />
>       <DstRect xOff="0" yOff="0" xSize="4865" ySize="4090" />
>     </SimpleSource>
>   </VRTRasterBand>
> </VRTDataset>
>
> The coordinates look fine in the two TIFFs:
>
> $ gdalinfo -stats lat.tif
> Driver: GTiff/GeoTIFF
> Files: lat.tif
> Size is 4865, 4090
> Image Structure Metadata:
>   INTERLEAVE=BAND
> Corner Coordinates:
> Upper Left  (    0.0,    0.0)
> Lower Left  (    0.0, 4090.0)
> Upper Right ( 4865.0,    0.0)
> Lower Right ( 4865.0, 4090.0)
> Center      ( 2432.5, 2045.0)
> Band 1 Block=4865x1 Type=Float32, ColorInterp=Gray
>   Minimum=39.552, Maximum=52.456, Mean=46.179, StdDev=3.112
>
> $ gdalinfo -stats lon.tif
> Driver: GTiff/GeoTIFF
> Files: lon.tif
> Size is 4865, 4090
> Image Structure Metadata:
>   INTERLEAVE=BAND
> Corner Coordinates:
> Upper Left  (    0.0,    0.0)
> Lower Left  (    0.0, 4090.0)
> Upper Right ( 4865.0,    0.0)
> Lower Right ( 4865.0, 4090.0)
> Center      ( 2432.5, 2045.0)
> Band 1 Block=4865x1 Type=Float32, ColorInterp=Gray
>   Minimum=16.249, Maximum=36.250, Mean=25.532, StdDev=4.917
>   NoData Value=-2.1474836e+09
>   Metadata:
>     STATISTICS_MINIMUM=16.248615264893
>     STATISTICS_MAXIMUM=36.24991607666
>     STATISTICS_MEAN=25.532068327481
>     STATISTICS_STDDEV=4.9167101776381
>     STATISTICS_VALID_PERCENT=100
>
> However, this fails with "Warning 1: Too many points (529 out of 529)
> failed to transform, unable to compute output bounds.":
>
> $ gdalwarp -geoloc -t_srs EPSG:4326 Oa01.vrt Oa01.tif
>
> The files are available at https://nas.dend.ro/browse/datasets/Oa01.zip,
> if anyone can to take a look.
>
> Thanks,
> Laurentiu
> _______________________________________________
> gdal-dev mailing list
> gdal-dev at lists.osgeo.org
> https://lists.osgeo.org/mailman/listinfo/gdal-dev
>


-- 
Michael Sumner
Ordinary Member,  Streets People Love Hobart Association
Research Software Engineer
Australian Antarctic Division
Hobart, Australia
0438489030
e-mail: mdsumner at gmail.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/gdal-dev/attachments/20250927/ab3e047d/attachment.htm>


More information about the gdal-dev mailing list