Viktigt

Översättning är en gemenskapsinsats du kan gå med i. Den här sidan är för närvarande översatt till 66.67%.

17.15. Klippning och sammanslagning av rasterlager

Observera

I den här lektionen kommer vi att se ett annat exempel på förberedelse av spatiala data för att fortsätta använda geoalgoritmer i verkliga scenarier.

I den här lektionen ska vi beräkna ett lutningslager för ett område som omger en stad, vilket ges i ett vektorlager med en enda polygon. DEM-basen är uppdelad i två rasterlager som tillsammans täcker ett område som är mycket större än området runt den stad som vi vill arbeta med. Om du öppnar projektet som motsvarar den här lektionen kommer du att se ungefär så här.

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

Dessa lager har två problem:

  • De täcker ett område som är för stort för det vi vill ha (vi är intresserade av en mindre region runt stadens centrum)

  • De ligger i två olika filer (stadsgränsen ligger i ett enda rasterlager, men som sagt, vi vill ha lite extra yta runtomkring).

Båda dessa problem kan enkelt lösas med lämpliga geoalgoritmer.

Först skapar vi en rektangel som definierar det område vi vill ha. För att göra det skapar vi ett lager som innehåller begränsningsrutan för lagret med gränserna för stadsområdet, och sedan buffrar vi det så att vi får ett rasterlager som täcker lite mer än vad som är absolut nödvändigt.

To calculate the bounding box , we can use the Extract layer extent algorithm

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

To buffer it, we use the Buffer algorithm, with the following parameter values.

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

Varning

Syntaxen har ändrats i de senaste versionerna; ställ in både Distance och Arc vertex till .25

Här är den resulterande begränsningsrutan som erhålls med hjälp av parametrarna som visas ovan

../../../_images/buffer.png

It is a rounded box, but we can easily get the equivalent box with square angles, by running the Extract layer extent algorithm on it. We could have buffered the city limits first, and then calculate the extent rectangle, saving one step.

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

You will notice that the rasters has a different projection from the vector. We should therefore reproject them before proceeding further, using the Warp (reproject) tool.

../../../_images/warp1.png

Observera

De senaste versionerna har ett mer komplext gränssnitt. Se till att minst en komprimeringsmetod är vald.

With this layer that contains the bounding box of the raster layer that we want to obtain, we can crop both of the raster layers, using the Clip raster by mask layer algorithm.

../../../_images/clip.png

Once the layers have been cropped, they can be merged using the SAGA Mosaic raster layers algorithm.

../../../_images/merge1.png

Observera

Du kan spara tid genom att först sammanfoga och sedan beskära, och du undviker att anropa beskärningsalgoritmen två gånger. Men om det finns flera lager att slå samman och de har en ganska stor storlek, kommer du att få ett stort lager som det senare kan vara svårt att bearbeta. I det fallet kan du behöva anropa klippalgoritmen flera gånger, vilket kan vara tidskrävande, men oroa dig inte, vi kommer snart att se att det finns några ytterligare verktyg för att automatisera den operationen. I det här exemplet har vi bara två lager, så du behöver inte oroa dig för det nu.

Därmed får vi den slutliga DEM som vi vill ha.

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

Nu är det dags att beräkna lutningslageret.

A slope layer can be computed with the Slope algorithm, but the DEM obtained in the last step is not suitable as input, since elevation values are in meters but cellsize is not expressed in meters (the layer uses a CRS with geographic coordinates). A reprojection is needed. To reproject a raster layer, the Warp (reproject) algorithm can be used again. We reproject into a CRS with meters as units (e.g. 3857), so we can then correctly calculate the slope, with either SAGA or GDAL.

Med den nya DEM kan lutningen nu beräknas.

../../../_images/slope1.png

Och här är det resulterande sluttningslageret.

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

The slope produced by the Slope algorithm can be expressed in degrees or radians; degrees are a more practical and common unit. In case you calculated it in radians, the Metric conversions algorithm will help us to do the conversion (but in case you didn’t know that algorithm existed, you could use the raster calculator that we have already used).

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

Reprojecting the converted slope layer back with the Reproject raster layer, we get the final layer we wanted.

Reprojektionsprocesserna kan ha lett till att det slutliga lagret innehåller data utanför den avgränsande box som vi beräknade i ett av de första stegen. Detta kan lösas genom att klippa det igen, precis som vi gjorde för att få fram bas-DEM.