[gdal-dev] GDAL multi bands files conversion to NetCDF

Rousseau Lambert2, Louis-Philippe (EC) louis-philippe.rousseaulambert2 at canada.ca
Wed Jul 18 08:39:21 PDT 2018


Hi everyone!

I have s question regarding the conversion of a multiband file (like GeoTIFF) to NetCDF.

First my observations:

I used gdal_translate to convert a Geotiff to NetCDF:

gdal_translate -of input.tif result.nc

The gdalinfo result is:

Driver: netCDF/Network Common Data Format
Files: result.nc
Size is 512, 512
Coordinate System is `'
Metadata:
  NC_GLOBAL#Conventions=CF-1.5
  NC_GLOBAL#GDAL=GDAL 1.10.0, released 2013/04/24
  NC_GLOBAL#GDAL_AREA_OR_POINT=Area
  NC_GLOBAL#history=Wed Jul 18 15:33:16 2018: GDAL CreateCopy( result.nc, ... )
Subdatasets:
  SUBDATASET_1_NAME=NETCDF:"result.nc":Band1
  SUBDATASET_1_DESC=[1500x1650] Band1 (32-bit floating-point)
  SUBDATASET_2_NAME=NETCDF:"result.nc":Band2
  SUBDATASET_2_DESC=[1500x1650] Band2 (32-bit floating-point)
  SUBDATASET_3_NAME=NETCDF:"result.nc":Band3
  SUBDATASET_3_DESC=[1500x1650] Band3 (32-bit floating-point)
  SUBDATASET_4_NAME=NETCDF:"result.nc":Band4
  SUBDATASET_4_DESC=[1500x1650] Band4 (32-bit floating-point)
  SUBDATASET_5_NAME=NETCDF:"result.nc":Band5
  SUBDATASET_5_DESC=[1500x1650] Band5 (32-bit floating-point)
Corner Coordinates:
Upper Left  (    0.0,    0.0)
Lower Left  (    0.0,  512.0)
Upper Right (  512.0,    0.0)
Lower Right (  512.0,  512.0)
Center      (  256.0,  256.0)

As you can see, the different bands are written in different SUBDATASET. I would like the output to be only different bands, not different datasets. I don't think I saw a creation option that could do that...

I would like something like:

Driver: netCDF/Network Common Data Format
Files: output.nc
Size is 1068, 510
Coordinate System is `'
Origin = (-140.999964377091317,83.499994903744323)
Pixel Size = (0.083333295198278,-0.083333313348017)
Metadata:
  lat#axis=Y
  lat#long_name=latitude
  lat#standard_name=latitude
  lat#units=degrees_north
  lon#axis=X
  lon#long_name=longitude
  lon#standard_name=longitude
  lon#units=degrees_east
...Some metadata...
Corner Coordinates:
Upper Left  (-140.9999644,  83.4999949)
Lower Left  (-140.9999644,  41.0000051)
Upper Right ( -52.0000051,  83.4999949)
Lower Right ( -52.0000051,  41.0000051)
Center      ( -96.4999847,  62.2500000)
Band 1 Block=1068x1 Type=Float32, ColorInterp=Undefined
    Computed Min/Max=-29.841,11.720
  NoData Value=-99
  Metadata:
    long_name=Autumn mean temperature
    missing_value=-99
    NETCDF_DIM_time=17093376
    NETCDF_VARNAME=tm_son
    _FillValue=-99
Band 2 Block=1068x1 Type=Float32, ColorInterp=Undefined
    Computed Min/Max=-30.198,11.576
  NoData Value=-99
  Metadata:
    long_name=Autumn mean temperature
    missing_value=-99
    NETCDF_DIM_time=17102136
    NETCDF_VARNAME=tm_son
    _FillValue=-99
Band 3 Block=1068x1 Type=Float32, ColorInterp=Undefined
    Computed Min/Max=-30.479,11.854
  NoData Value=-99
  Metadata:
    long_name=Autumn mean temperature
    missing_value=-99
    NETCDF_DIM_time=17110920
    NETCDF_VARNAME=tm_son
    _FillValue=-99


Is there anything I missed ? Can you think of another way to do that ?

Thanks a lot!

LP
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/gdal-dev/attachments/20180718/9f02f361/attachment.html>


More information about the gdal-dev mailing list