#Pacotes necessários
require(raster)
## Carregando pacotes exigidos: raster
## Warning: package 'raster' was built under R version 4.3.3
## Carregando pacotes exigidos: sp
## Warning: package 'sp' was built under R version 4.3.3
require(landscapemetrics)
## Carregando pacotes exigidos: landscapemetrics
## Warning: package 'landscapemetrics' was built under R version 4.3.3
require(magrittr)
## Carregando pacotes exigidos: magrittr
## Warning: package 'magrittr' was built under R version 4.3.3
##
## Attaching package: 'magrittr'
## The following object is masked from 'package:raster':
##
## extract
library("raster")
library("landscapemetrics")
library("magrittr")
Entrada de dados
setwd("C:/Users/813562/Downloads/dados_07_01/dados_07_01")
getwd()
## [1] "C:/Users/813562/Downloads/dados_07_01/dados_07_01"
r<-raster("/Users/813562/Downloads/dados_07_01/dados_07_01/AmostraBuri_17.tif")
Plotando os dados
plot(r)
Verificando o sistema de coordenadas
check_landscape(r, verbose = TRUE)
## Warning: Caution: Coordinate reference system not metric - Units of results
## based on cellsizes and/or distances may be incorrect.
## layer crs units class n_classes OK
## 1 1 geographic degrees integer 2 ✖
As coordenadas são geográficas
Reprojetando o mapa para coordenadas projetadas
nova.proj<-"+proj=utm +zone=22 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs"
r.m<-projectRaster(r, res=30, crs = nova.proj, method="ngb")
par(mfrow=c(1,2))
plot(r)
plot(r.m)
Verificando novamente o sistema de coordenadas
check_landscape(r.m, verbose = TRUE)
## layer crs units class n_classes OK
## 1 1 projected m integer 2 ✔
?landscapemetrics
## starting httpd help server ... done
#P.01: Descreva brevemente 2 métricas de cada nível. lsm_c_cohesion (COHESION - class level): Se trata de uma métrica que calcula a conectividade de manchas (patches) de mesma classe, verficando se as mesmas estão agregadas ou se encontram mais isoladas, também fornecendo dados sobre a configuração da paisagem.
lsm_c_division (DIVISION - class level): também se trata de uma “métrica de agregação”, que calcula a probabilidade de duas células aleatórias não estarem localizadas no mesmo patch de classe i.
lsm_l_contag (CONTAG - lanscape level): essa métrica é baseada na proximidade e calcula a probabilidade de duas células aleatórias pertencerem a mesma classe.
lsm_l_ed (ED - lanscape level): essa métrica trata sobre a área e a borda da paisagem, descrevendo a configuração da paisagem - maior agrupamento de classes irá resultar em menor densidade de borda, por exemplo.
lsm_p_shape (SHAPE - patch level): essa métrica de forma calcula a razão entre o perímetro do patch e a raíz quadrada da área do patch, ajustando o padrão do quadrado.
lsm_p_enn (ENN - patch level): é uma métrica de agregação; calcula a distância do patch mais próximo de mesma classe i, sendo que essa distância é medida de borda a borda. É uma métrica eficaz para descrever o isolamento de patch.
Métricas da Paisagem Avaliando a área total da paisagem de estudo
area.total<-lsm_l_ta(r.m, directions=8)
#P.02: Qual é a área total da paisagem? 10003.86 m
Verificando a área total de borda
te<-lsm_l_te(r.m, count_boundary=FALSE)
Verificando a densidade de Borda (“Edge Density”)
ed8<-lsm_l_ed(r.m, count_boundary = FALSE, directions = 8)
Métricas para a classe
cls.area<-lsm_c_ca(r.m, directions = 8)
Há 16.32% de habitat nativo na paisagem, ou seja, trata-se de uma paisagem com pouco habitat nativo.
Verificando a organização do habitat em relação ao tamanho médio dos remanescentes.
area.media.frag<-lsm_c_area_mn(r.m, directions = 8)
Verificando a distribuição dos tamanhos dos remanescentes
cv_tamanho<-lsm_c_area_cv(r.m, directions = 8)
sd_tamanho<-lsm_c_area_sd(r.m, directions = 8)
Métricas para as manchas Calculando o tamanho das manchas
frag.sizes.8<-lsm_p_area(r.m, directions = 8)
Selecionando somente as manchas de habitat
f.s.8<-frag.sizes.8 %>% dplyr::filter(class == 1)
#P.03: Qual é o tamanho do maior remanescente de vegetação nativa? O maior remanescente de vegetação nativa possui 400.77 m/ha.
Comparar agora com o que obtemos com a regra de ligação dos 4 vizinhos.
frag.sizes.4<-lsm_p_area(r.m, directions = 4)
f.s.4<-frag.sizes.4 %>% dplyr::filter(class > 0)
#P.04: Descreva as principais diferenças nos resultados de se usar a regra dos 8 ou dos 4 vizinhos. A regra dos 4 vizinhos determina que um pixel é considerado vizinho de outro se estiver adjacente a ele na horizontal ou vertical, ou seja, se eles compartilham um de seus lados. Já a regra dos 8 vizinhos determina que um pixel é vizinho de outro se compartilhar qualquer um de seus 8 vizinhos, incluindo lados e diagonais. Utilizando a regra dos 8 vizinhos obtemos valores maiores e mais acurados, uma vez que se considera mais variações na conectividade em relação a regra dos 4 vizinhos.