[gdal-dev] guidance on NSIDC Sea Ice concentration data
Even Rouault
even.rouault at spatialys.com
Mon Jul 27 10:34:48 PDT 2015
On Friday 24 July 2015 22:56:42 Michael Sumner wrote:
> Hello, I've put together an example of using NSDIC sea ice concentration
> data with GDAL VRT.
>
> In this Github readme I list two example data sets, one for the Northern
> and one for the Southern hemisphere where the raw
> binary NSDIC .bin files have accompanying VRT files:
>
> https://github.com/mdsumner/NSIDC-seaice
>
> I'd really like to see this format as a GDAL driver, but I don't have the
> C++ expertise to make it happen. I can offer help and testing if anyone was
> interested in writing the driver, but I would also appreciate any guidance
> and kick start for me to learn to do it myself.
>
> The format itself is detailed here, and everything required can be gleaned
> from the header - though in the VRT pathway I simply skip the header and
> apply the right CRS, orientation, grid size and geotransform:
>
> http://nsidc.org/data/docs/daac/nsidc0051_gsfc_seaice.gd.html#format
>
> The repo includes the minimal .vrt required to read this as a valid GDAL
> data set and uses plotting in R with standard R
> mapping tools to show that the interpretation is right, at least visibly.
>
> I have these questions:
>
> * what is the best template driver for these data, should it derive from
> GDALPamDataset like JDEM or from RawDataset as ERS does? (I'm way out of
> my depth here)
Mike,
Deriving from RawDataset is certainly the best option here. You can take
exemple on drivers in frmts/raw/
> * is it appropriate to use this SRS when the datum is unspecified? I'm not
> clear on the pitfalls here and how to advise downstream use
Do you mean EPSG 3411 and 3412 ? Well, why not... ?
>
> I am competent with building GDAL but I get lost in the steps required to
> add a new driver. A dummy example, or some more detailed guidance for how I
> would apply the "GDAL Driver Implementation Tutorial" to these data would
> be enough for me to flesh out the details.
You'll basically have to use a new file and reference it in
frmts/raw/GNUmakefile and makefile.vc, as well as declaring the driver register
function in gcore/gdal_frmts.h and calling it in frmts/gdalallregister.cpp
Even
--
Spatialys - Geospatial professional services
http://www.spatialys.com
More information about the gdal-dev
mailing list