I'm working on a project to get the maximum elevation along a 10-mile wide corridor. To accomplish this I've loaded raster elevation data into a PostgreSQL database, and used the PostGIS extensions to give me the desired result.

I have two different resolution data sources (both from the USGS) available: a 100-meter resolution dataset, which can return a result from a roughly 627 nautical mile long line in about 3 seconds, and a 2-arcsecond resolution dataset, which takes closer to 10 minutes.

My question is, given that I am just looking for the maximum elevation over a large area, what, if anything, am I loosing by using the lower-resolution data? For example, could the 100 meter data "jump over" a ridge, giving lower elevations on either side and missing the higher elevation of the ridge top? Or would the lower resolution data "interpolate" the area between points somehow, such as the values being the maximum elevation in a 100-meter by 100-meter block, such that the ridge would be taken into account?

Keep in mind that I only care about the maximum elevation here - I don't care where exactly it is, so in that regard resolution is of little consequence (within reason). I just need to know that the maximum elevation I get from the dataset truly is the maximum elevation in that area.

EDIT: Both data sets come from the USGS. The 100-meter dataset is this one: https://nationalmap.gov/small_scale/mld/elev100.html, while the 2-arcsecond dataset is pulled from the DEM's available at http://viewer.nationalmap.gov/basic

  • You could lose a lot by looking at the 100-meter resolution. "Raw" 100 meter resolution could skip over a ridge. "Calculated" 100 meter resolution produced from a higher resolution source could be made to consider the ridge elevation. You need to know more about the source of the dataset. – kttii Jan 10 '17 at 19:30
  • 1
    Since two arcseconds is around 60 meters, which scarcely differs from 100 meters, the performance differential is mystifying. Maybe you should investigate the cause of that first. – whuber Jan 10 '17 at 19:35
  • @whuber Not exactly. Two arcseconds is around 60 meters when talking latitude, yes (which still results in about 20% more points, if I did the math right, so not insignificant), but of more note is what happens with longitude - the length of an arc second decreases as you head north. I'm dealing with Alaska - in the center of the state, 2 arcseconds of longitude is only about 16 meters (30.87*.0561*cos(64), see esri.com/news/arcuser/0400/wdside.html). Way WAY less than 100. Upshot: 62,702,675 points vs 1,642,700,002 points – ibrewster Jan 10 '17 at 19:50
  • Yes, it all depends on whether you take the arcsecond in latitude or longitude (which is why I avoid using that etrm if at all possible and try to refer to the actual length). But we still have a conundrum: one of your datasets has six times the resolution of the other but requires 40*60/3 = 800 times longer to process. That suggests it scales somewhere between O(n^3) and O(n^4) where n represents the size of the data. That is unusually bad; there is no theoretical reason it should be any worse than O(n^2) (and plenty of reasons to suppose it should be O(n)). – whuber Jan 10 '17 at 20:38
  • 1
    @whuber It looks like querying a relatively small area in the high res database is quite fast. For example, if I get the coordinates of the max from the low-res data, then query a 1000-meter radius around there from the high-res data, that query only takes around 30ms. So maybe something like get the three or four highest points from the low res, then run those points through the high-res, on the assumption that even if the low res misses the high point, the high point will at least be close to what the low-res returns. – ibrewster Jan 10 '17 at 22:28

Your 100-meter data could certainly be missing a small ridge in elevation between sample points. But the same could be true of your 20 arc-second data depending on where the elevation measurements the data is based on were collected and how they were processed into the layers you're using. As kttii mentions in the comments, if your 100-meter dataset (or the other one) is downsampled from something with higher resolution, each 100-meter cell may represent the mean elevation within that cell, or the max, or something else. The metadata should help.

Otherwise, I believe there is no way to know if you are missing a high point without checking the elevation data against other, more precise elevation data. There may be smaller areas within your corridor where better data exists, you could compare any such datasets against yours and see if they agree on the max elevation within those areas. If you are missing a high point, there's a chance you could be missing the high point in your entire corridor.

| improve this answer | |
  • See my edit regarding data sources. The metadata means nothing to me, unfortunately. – ibrewster Jan 10 '17 at 20:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.