An idea

I run opentopodata.org, it’s software that sets up a REST api for point queries on elevation datasets. The software is open source and I also host a free demo api suitable for occasional usage.

By far the most common feature request I get is the ability to query multiple datasets. From talking to users, this is often motivated by the fact that

  • global elevation datasets are fairly low resolution
  • high-quality high-resolution LIDAR datasets are usually released at the city level, possibly nationwide for small countries.

So naturally people want to make use of quality local datasets with the global datataset as a fallback. That way you get good data in your area of interest you care about, but still can guarantee global coverage. Basically what people want is a (cheap, open, self-hosted) alternative to the Google Maps Elevation API.

That’s pretty easy to implement technically and multiple dataset queries are now supported by Open Topo Data.

However, there are often differences between datasets meaning you don’t get seamless transitions when simply stacking datasets: each one can use different vertical datums, projections, post-processing steps, or can just be wrong.

Properly merging datasets is non-trivial work: you need to pick a common vertical datum, research how the datasets were collected and processed, investigate systematic issues with the data, validate against other datasets and survey markers, merge the datasets, and finally address any seams along boundaries. It’s a process that can’t be entirely automated.

So my plan is to

  • Take a bunch of open elevation datasets
  • Merge them, making the code and research open
  • Distribute the merged open dataset for free
  • Offer a paid hosted drop-in replacement for the Google elevation API.

I’ll write about my process of researching and building the dataset here. This is motivated by developers like Jonnie Hallman building out in the open. I’ve learned a lot from journals like theirs, plus it seems like a useful exercise to organise your thoughts. If you’d like to follow along you can follow this feed.