17.15. Recortar e mesclar camadas raster

Nota

Nesta lição veremos outro exemplo de preparação de dados espaciais, para continuar usando geoalgorítmos em cenários reais.

Para esta lição, vamos calcular uma camada de inclinação para uma área em torno de uma área da cidade, que é dado em uma camada vetorial com um único polígono. O DEM base é dividido em duas camadas raster que, em conjunto, cobrem uma área muito maior do que o entorno da cidade que queremos trabalhar. Se você abrir o projeto correspondente a esta lição, você vai ver algo como isto

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

Essas camadas têm dois problemas:

  • Eles cobrem uma área que é muito grande para o que queremos (nós estamos interessados ​​em uma região menor ao redor do centro da cidade)

  • They are in two different files (the city limits fall into just one single raster layer, but, as it’s been said, we want some extra area around it).

Ambos são facilmente solucionáveis com os geoalgoritmos adequados.

Primeiro. Nós criamos um retângulo definindo a área que nós queremos. Para fazer isto, nós criamos uma camada contendo a caixa delimitadora da camada com os limites da área da cidade, e então lhe aplicamos um buffer, de modo a ter uma camada raster que cobre um pouco mais do que o estritamente necessário.

Para calcular a caixa delimitadora, nós podemos usar o algoritmo Polígono a partir da extensão da camada

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

Para aplicar o buffer, nós usamos o Buffer de distância fixa, com os seguintes valores de parâmetros.

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

Aviso

Syntax changed in recent versions; set both Distance and Arc vertex to .25

Aqui está a caixa delimitadora obtida usando os parâmetros acima

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

É uma caixa arredondada, mas podemos facilmente chegar a caixa equivalente com ângulos retos, executando o algoritmo Polígono a partir da extensão da camada nele. Poderíamos ter aplicado um buffer dos limites da cidade em primeiro lugar, e depois calcular a extensão retângulo, economizando uma etapa.

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

Você vai notar que os rasters tem uma projeção diferente do vetor. Devemos, portanto, reprojetá-los antes de prosseguir, usando a ferramenta Deformar (reprojeção).

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

Nota

Recent versions have a more complex interface. Make sure at least one compression method is selected.

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 with polygon algorithm.

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

Uma vez que as camadas foram cortadas, eles podem ser mescladas usando o algoritmo GDAL Merge.

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

Nota

You can save time merging first and then cropping, and you will avoid calling the clipping algorithm twice. However, if there are several layers to merge and they have a rather big size, you will end up with a large layer than it can later be difficult to process. In that case, you might have to call the clipping algorithm several times, which might be time consuming, but don’t worry, we will soon see that there are some additional tools to automate that operation. In this example, we just have two layers, so you shouldn’t worry about that now.

Com isso, temos o DEM final que queremos.

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

Agora é hora de calcular a camada de declividade.

A camada de inclinação pode ser calculado com o algoritmo Slope, Aspect, Curvature, mas o DEM obtido na última etapa não é adequado como entrada, uma vez que valores de elevação estão em metros, mas o tamanho da célula não é expresso em metros (a camada usa um CRS com coordenadas geográficas). É necessária uma reprojeção. Para reprojetar uma camada raster, o algoritmo *Deformar (reprojetar) * pode ser usado novamente. Nós reprojetamos em um CRS com medidores como unidades (por exemplo, 3857), para que possamos, então, calcular correctamente a declividade, tanto com SAGA ou GDAL.

Com o novo DEM, a declividade pode ser agora calculada.

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

E aqui está a camada resultante de declividade.

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

The slope produced by the Slope, Aspect, Curvature 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

Reprojetando a camada de declividade convertida novamente com o Reprojetar camada raster, temos a camada final que queríamos.

Aviso

todo: Adicionar imagem

The reprojection processes might have caused the final layer to contain data outside the bounding box that we calculated in one of the first steps. This can be solved by clipping it again, as we did to obtain the base DEM.