I am quite a beginner in respect to GIS and hopefully someone can help me out with the problem I have.
I have multiple digital surface models [DSMs] of the same area with all necessary geo-information (6 in total). However they are not exactly the same as they have been acquired on different days (row and cols of the raster are not identical). I already managed to align the DSMs, however now I need to find the intersecting area that is part of all six DSMs because I want to do some processing with this (which I indent to do in python). I found the following post:
http://sciience.tumblr.com/post/101722591382/finding-the-georeferenced-intersection-between-two
This methods works fine for two DSMs, however the extension to more areas is not straightforward (at least not for me at the moment).
I guess this is a rather standard beginner problem, however I only ever found answers regarding exactly two areas.
1 Answer 1
Reclassify the six surface models so that all the elevation data values equal one and the non-data pixels equal 0. Multiply the 6 reclassified outputs together. The resulting raster will contain values of one or zero. Anyplace the output has a value of one will be that place where all six surface share data values.
Here is a GDAL link to get you started.
Here is a link to the reclassify tool in ArcGIS.
If you are interested in a Python solution you should still work it out in GIS first. Consider learning Model Builder in ArcGIS then export your model to Python once you have it working.
-
Thank you so much for your quick answer! I will have a look at ArcGIS and QGIS. However creating a binary mask would not work in my case, as the elevations can be quite sparse and would be even sparser with that appraoch. However for future reference I found a very quick and easy work-around: use gdal_merge.py with the seperate option (join each raster in a different band). This automatically does what I want and I can read each band separately afterwards!dodo– dodo2018年07月17日 12:30:47 +00:00Commented Jul 17, 2018 at 12:30