18.15. Rasterlagen clippen en samenvoegen

Notitie

In deze les zullen we een ander voorbeeld van ruimtelijke voorbereiding zien, om het gebruiken van geo-algoritmen in scenario’s van de echte wereld te vervolgen.

Voor deze les gaan we een hellingslaag berekenen voor een gebied dat een stedelijk gebied omsluit, wat is opgegeven in een vectorlaag met één enkele polygoon. De basis DEM is opgedeeld in twee rasterlagen die, tezamen, een veel groter gebied bedekken dan dat rondom de stad waarmee we willen werken. Als u het project opent dat overeenkomt met deze les, zult u iets zoals dit zien.

../../../_images/medfordarea.png

Deze lagen hebben twee problemen:

  • Zij bedekken ene gebied dat veel te groot is voor wat we willen (we zijn geïnteresseerd in een kleinere regio rondom het centrum van de stad)

  • Zij staan in twee verschillende bestanden (de stadsgrenzen vallen precies binnen één enkele rasterlaag, maar, zoals gezegd, we willen er wat extra gebied rondom bij).

Beide zijn eenvoudig op te lossen met behulp van de toepasselijke geo-algoritmen.

Eerst willen we een rechthoek maken die het gebied definieert dat we willen. We maken, om dit te doen, een laag die het begrenzingsvak van de laag met de grenzen van het stedelijk gebied bevat, en dan bufferen we die, om een rasterlaag te verkrijgen die iets meer bedekt dan strikt noodzakelijk.

We kunnen het algoritme Polygon from layer extent gebruiken om het begrenzingsvak te berekenen.

../../../_images/bbox.png

We gebruiken het algoritme Fixed distance buffer, met de volgende waarden voor de parameters om het te bufferen.

../../../_images/buffer_dialog.png

Waarschuwing

Syntaxis is in recente versies gewijzigd; stel zowel Afstand als Boogpunt in op .25

Hier is het resulterende begrenzingsvak dat is verkregen met behulp van de hierboven weergegeven parameters

../../../_images/buffer1.png

Het is een afgerond vak, maar we kunnen eenvoudig het equivalente vak met vierkante hoeken verkrijgen door het algoritme Polygon from layer extent er op uit te voeren. We zouden eerst de stadsgrenzen hebben kunnen bufferen, en dan de rechthoek van het bereik berekenen, wat ons één stap bespaart.

../../../_images/buffer_squared.png

Het zal u opvallen dat de rasters een verschillende projectie dan de vector hebben. We zouden ze daarom opnieuw moeten projecteren, met behulp van het gereedschap Warp (Herprojecteren), voordat we verder gaan.

../../../_images/warp.png

Notitie

Recente versies hebben een meer complexe interface. Zorg er voor dat tenminste één methode voor compressie is geselecteerd.

Met deze laag, die het begrenzingsvak bevat van de rasterlaag die we willen verkrijgen, kunnen we beide rasterlagen bijsnijden, met behulp van het algoritme Clip raster with polygons.

../../../_images/clip1.png

Als de lagen eenmaal zijn bijgesneden, kunnen zij worden samengevoegd met behulp van het algoritme van GDAL Merge.

../../../_images/merge.png

Notitie

U kunt tijd besparen door eerst samen te voegen en dan bij te snijden, en u zult voorkomen dat u het algoritme voor clippen tweemaal moet aanroepen. Als er echter meerdere lagen zijn die moeten worden samengevoegd en zij zijn van een nogal aanzienlijke grootte, dan zult u eindigen met een grote laag die later misschien moeilijk te verwerken is. In dat geval dient u misschien het algoritme voor clippen meerder malen aan te roepen, wat tijd zou kunnen vergen, maar maak u geen zorgen, we zullen snel zien dat er enkele aanvullende gereedschappen zijn om die bewerking te automatiseren. In dit voorbeeld hebben we slechts twee lagen, dus u zou zich daar nu geen zorgen over moeten maken.

Daarmee krijgen we de uiteindelijke DEM die we willen.

../../../_images/finaldem.png

Nu is het tijd om de hellingslaag te berekenen.

Een hellingslaag kan worden berekend met het algoritme Slope, Aspect, Curvature, maar de in de laatste stap verkregen DEM is niet geschikt als invoer, omdat de waarden voor de hoogte in meters zijn, maar de celgrootte is niet uitgedrukt in meters (de laag gebruikt een CRS met geografische coördinaten). Opnieuw projecteren is nodig. Het algoritme Warp (herprojecteren) kan opnieuw worden gebruikt om een rasterlaag opnieuw te projecteren. We projecteren opnieuw naar een CRS met meters als eenheden (bijv. 3857), zodat we daarna de helling correct kunen berekenen, met ofwel SAGA of GDAL.

Met de nieuwe DEM kan de helling nu worden berekend.

../../../_images/slope.png

En hier is de uiteindelijke hellingslaag.

../../../_images/slopereproj.png

De door het algoritme Slope, Aspect, Curvature geproduceerde helling kan worden uitgedrukt in graden of radialen, maar graden zijn een meer praktische en algemenere eenheid. In het geval u het berekende in radialen zal het algoritme Metric conversions zal ons helpen de conversie uit te voeren (maar voor het geval u niet wist dat dat algoritme bestond, kunt u de Raster calculator gebruiken die we al eerder hebben gebruikt).

../../../_images/metricconversions.png

We krijgen de uiteindelijke laag die we willen door de geconverteerde hellingslaag opnieuw terug te projecteren met Reproject raster layer.

Waarschuwing

todo: Afbeelding toevoegen

De processen voor opnieuw projecteren zouden er voor hebben kunnen zorgen dat de uiteindelijke laag gegevens bevat die buiten het begrenzingsvak liggen dat we in een van de eerste stappen hebben berekend. Dit kan worden opgelost door het opnieuw te clippen, zoals we hebben gedaan om de basis DEM te krijgen.