3

I want to select contour lines that have lower elevation values from neighboring contour lines. I'm using ArcGIS but do not have the hydrology tool set. I can use open source if needed. I thought about cutting the contour lines out of a road buffer, and selecting from the cut contour layer using sql query by tping something to the effect of: elevation value (n) is less than elevation value (n plus or minus one.) I however, don't think this type of query can be done, and I don't know how to make the contour lines part of a network to perform spatial sequential analysis. If I did I would create the network using the roads layer. I hope that makes sense.

PolyGeo
  • 65,136
  • 29
  • 109
  • 338
jwells
  • 65
  • 6
  • A contour should be different to the next one, in many cases lower. Why are you trying to select lower contours? Do you have contour elevations out of step? – Michael Stimson Jun 15 '17 at 00:22
  • No, the contours values are correct, but I am trying to identify low areas of the road, and I wanted to do this by selecting contours that have lower elevations than the two neighboring contours. – jwells Jun 15 '17 at 00:25
  • Are you trying to find depressions in the road surface? – Michael Stimson Jun 15 '17 at 00:26
  • Yes. Peaks would be nice too, but depressions for now would be enough. – jwells Jun 15 '17 at 00:28
  • If you have spatial analyst use Fill http://resources.arcgis.com/en/help/main/10.2/index.html#//009z00000050000000 then subtract unfilled from filled and Con http://resources.arcgis.com/en/help/main/10.2/index.html#//009z00000005000000 difference > 0. To find the peaks turn the raster over (MaxValue - raster) and repeat the process. Then Raster to Polygon on the binary Con output and done! – Michael Stimson Jun 15 '17 at 00:30
  • Looks like I may have to get spatial analyst. I was hoping to find an alternative way. That helps though, thanks. – jwells Jun 15 '17 at 00:32
  • If you intend to use ArcGis for this you will need SA, I'll see what I can find in QGIS. – Michael Stimson Jun 15 '17 at 00:33

1 Answers1

3

To find depressions and peaks on a surface, assuming you have the DEM that created the contours:

The first step is to fill (see Are there any open source tools to detect and fill sinks on a DEM?) the DEM.

Subtract the original DEM from the filled DEM.

Any positive values indicate a filled area, convert to a binary raster, in ArcGIS you would use Con but this can also be done in QGIS (see What is the equivalent of arcpy "Con" in QGIS and/or R raster-package?)

Then convert raster to polygon (see How to make polygon from cells of a raster?)

To find peaks turn the raster over with QGIS raster calculator by subtracting the DEM from an arbitrary value higher than or equal to the maximum cell value (to keep values positive).

Repeat process to find depressions as your peaks are now depressions.

Michael Stimson
  • 25,566
  • 2
  • 35
  • 74