I have converted two vector polyline datasets to raster format. One represents streams, and one represents roads. I need to create a third raster layer that contains cells where there are stream crossings.

I was going to use a simple boolean AND function to create a raster of stream-road junctions. However, at about 10% of the junctions, the raster lines intersect, but do not overlap. See the figure below.

Is there a tool or established method that edits the road raster to make sure that all road crossings actually have overlap with raster streams dataset?

Road(black) and Stream (blue) intersect but do not overlap

  • 1
    What GIS software are you using? – PolyGeo Aug 22 '16 at 20:15
  • 1
    You could look for intersections in the vector layers. See grass.osgeo.org/grass70/manuals/v.overlay.html or grass.osgeo.org/grass70/manuals/v.select.html – mankoff Aug 22 '16 at 21:14
  • I would convert the rasters to polylines and perform the intersection using the vectors.. as you have noticed with the rasters two features can cross without sharing a common pixel. If you must do this with rasters then first resample to half the resolution using 'nearest', 'maximum' or 'majority' (how depends on your GIS software) to encourage commonality – Michael Stimson Aug 22 '16 at 22:26
  • Converting to vectors is the way to go. If this is not an option, expand both by 1 cell and do your raster algebra. Convert output to polygons and compute their centres. Close enough – FelixIP Aug 23 '16 at 4:42
  • @ PolyGeo, I am using Whitebox GAT right now, but I can also use GRASS or Arc. FelixIP, thanks for your comment - it's a good idea. – Chris Aug 23 '16 at 14:27

Your Answer

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

Browse other questions tagged or ask your own question.