Você está na página 1de 48

CLASSIFICAÇÃO ISOCLUSTER DA PAISAGEM

PARA USO EM SÉRIE TEMPORAL

PLATAFORMA: G.E.E
(DEPOIS: G.COLAB + G.SLIDES)
DADOS TÉCNICOS DA ATIVIDADE

Atividade 05

“CLASSIFICAÇÃO ISOCLUSTER DA PAISAGEM E SUA VARIABILIDADE TEMPORAL”

• Plataformas: G.E.E (+ G.COLAB + G.SLIDES)

• Disciplinas correlacionadas do curso de Eng. Agronômica:


Gestão Ambiental

• Objetivos da atividade:
Compreender a variabilidade temporal das classes de cobertura numa dada paisagem

• Bases de dados exploradas: dados obtidos por meio do GEE


HABILIDADES DE GEOPROCESSAMENTO
ADQUIRIDAS NESTA AULA

• Classificação isocluster na nuvem

• Estudo de variabilidade espaciotemporal na nuvem

• Layoutização na nuvem
Definindo a área de estudo/interesse
1
Resultado

ANOS: 2014, 2018 E 2022


Para criar uma forma retangular ,basta clicar em um
3 ponto e arrasta para qualquer direção e clica no
final para fechar o retângulo

Na parte superior do Code Editor do GEE podemos


visualizar nossa camada criada para ser incluída no
código
Hora do Código !!
Agora escreva na parte de edição de código do Google Earthe Engine essas 3 linhas de códigos
var areaestudo = geometry;
Uso Descrição
var Palavra reservada dentro da linguagem
javaescript criar uma variável.

areaestudo Nome da variavel


Na linguagem de programação este
operador indica que a variável areade
==
estudo recebe “alguma coisa”, objeto ou
valor
geometry Retângulo criado na parte de desenho no
GEE
; Indica o fim dessa linha de codigo

/// comentários do código


Resumindo, eu estou dizendo para o computador que a minha variável área de
estudo contem a minha geometria criada na parte de desenho do GEE
var representacao = {'color': 'red'};
Uso Descrição
var Palavra reservada dentro da linguagem
javaescript criar uma variável.

representacao Nome da variavel


Na linguagem de programação este
operador indica que a variável areade
==
estudo recebe “alguma coisa”, objeto ou
valor
{'color‘: Parâmetro para configuração de cor
'red'} Valor atribuído ao parâmetro color para
representação na parde do cogido
; Indica o fim dessa linha de codigo
Map.addLayer(areaestudo,representacao,'Minha área de estudo');

Uso Descrição
Map.addLayer função para adicionar um determinado
objeto GEE ao mapa como uma camada.

areaestudo Variável que contem a minha forma


geométrica desenhada
Variável que contem as informações para
representacao representar a minha forma geométrica
como camada
, Indica separação de cada argumento que
compõe o método de um objeto como
camada
'Minha área de estudo’ Nome que eu quero que apareça na
minha Layer
; Indica o fim dessa linha de codigo
Map.addLayer(areaestudo,representacao,'Minha área de estudo');

Aqui nos desenhamos uma forma geométrica e atribuímos essa forma a nossa variável area de
estudo e adicionamos como uma camada para nossas interações no código

Quando desligamos a forma que cremamos vemos que ele esta inserida como um Layer na nossa
área de visualização dos dados
Adicionando um arquivo shape file

1 2

Vamos escolher fazer o upload de arquivos do tipo


shape file
Clicando em select , surje uma tela de busca, para
que nos diretórios da nosso PC possamos
selecionar os arquivos que compõe o formato
shape file - shp, shx, dbf,prj

3
Visualização do arquivo shape file
como camada no GEE
var perimetro_irrigado_PE = ee.FeatureCollection("projects/alencar23/assets/zona_ppis_petro“)

Uso Descrição
ee.FeatureCollection Função para chamar uma camada que
contenha uma coleção de objetos

("projects/alencar23/assets/zona_ppis_p Local onde nosso arquivo shape file foi


etro“) armazenado na nuvem
var representacaoshp = {'color': 'blue'};

Uso Descrição
var Palavra reservada dentro da linguagem
javaescript criar uma variável.

representacaoshp Nome da variavel


Na linguagem de programação este
operador indica que a variável areade
==
estudo recebe “alguma coisa”, objeto ou
valor
{'color‘: Parâmetro para configuração de cor
‘blue'} Valor atribuído ao parâmetro color para
representação na parde do cogido
; Indica o fim dessa linha de codigo
Map.addLayer(perimetro_irrigado_PE,representacaoshp,'Minha área de estudo-shapefile');

Uso Descrição
Map.addLayer função para adicionar um determinado
objeto GEE ao mapa como uma camada.

perimetro_irrigado_PE Variável que contem o arquivo shape file


transformado em camada pelo GEE
Variável que contem as informações para
representacaoshp representar a minha forma geométrica
como camada
, Indica separação de cada
argumento/parâmetro que compõe o
método de desenhar um objeto como
camada
'Minha área de estudo-shapefile’ Nome que eu quero que apareça na
minha Layer
; Indica o fim dessa linha de codigo
Resultado
Trabalhando com coleção de imagens
var data_inicial = '2019-01-01'
var data_final = ee.Date(Date.now())

Uso Descrição
ee.Date objeto Date

Date.now() Função para pegar a data atual


var collectionLS8 = ee.ImageCollection("LANDSAT/LC08/C02/T1_L2")
.filterDate(data_inicial,data_final)
.filterBounds(perimetro_irrigado_PE)
.filter(ee.Filter.lt('CLOUD_COVER',10))

print('Quantas imagens',collectionLS8)
print(collectionLS8.size())

Uso Descrição
ee.ImageCollection Função para obter um conjunto de imagens
("LANDSAT/LC08/C02/T1_L2") Caminho referente a onde esta hospedado os dados do LandSat

.filterDate Método para filtrar os metadados da coleção de imagem parauma data especifica

.filterBounds Método para procurar imagens para uma determinada região

filter(ee.Filter.lt Método de filtragem de dados por propriedade especifica dos metadados da


imagem
('CLOUD_COVER',10)) Propriedade detro dos metadados que representa a quantidade de nuvem em
porcentagem no caso menos de 10 %
Print / size() Print - Imprime os argumentos no console. / size – função para mapearo
tamanho da coleção de imagem
Com esse pequeno código nos acessamos
uma coleção de imagem filtramos essa
coleção por uma área de interesse ,
filtramos por um recorte temporal e
pedimos para ser mostrado quantas
imagens atendem aos nossos critérios
Uso Descrição
ee.Image Função para obter uma única imagem
LANDSAT/LC08/C02/T1_L2/LC08_217066_20190208 Caminho referente a onde esta hospedado os dados do
LandSat
Uso Descrição
Map.addLayer função para adicionar um determinado objeto
GEE ao mapa como uma camada.
uma_imagem Variável que contem a imagem selecionada pelo
ID transformado em camada pelo GEE
Método dentro da api do GEE que seleciona as
{bands:['SR_B4','SR_B3','SR_B2'] bandas para serem visualizadas empilhadas

,min:8455.2, max:16072.8}, Parâmetros para melhorar a qualidade de


visualização da imagem

‘Image TOA – Uma Imagem’ Nome que eu quero que apareça na minha Layer

; Indica o fim dessa linha de codigo


Resultado do código:
Composição RGB!
FAZENDO A CLASSIFICAÇÃO
ISOCLUSTER
Criando nosso classificador

var treinamento = paisagem.sample({


region: perimetro_irrigado_PE,
scale: 30,
numPixels: 5000
});
var treinamento = paisagem.sample({
region: perimetro_irrigado_PE,
scale: 30,
numPixels: 5000
});

Uso Descrição
sample Função que cria pontos aleatórios com base no
valor da imagem de entrada
paisagem Variável que contem imagem criada no GEE

A região da qual amostrar. Se não especificado,


region usa toda a área de cobertura da imagem.
scale Uma escala nominal em metros da projeção
para amostrar.
numPixels O número aproximado de pixels para
amostra. Se especificado, 'fator' não deve ser
especificado.
a paisagem

paisagem

Uso Descrição
ee.Clusterer.wekaKMeans Função do GEE que agrupa os pixels com os
valores iguais, segundo um determinado
numero de classes
train Método dentro da função de cluster para
utilizar as amostra criadas anteriormente para
treinar o algoritmo de classificação
Função de classificação para a nossa imagem
cluster(clusterer) da paisagem
Uso Descrição

var clusters = [0, 1, 2, 3, 4]; Primeiro vamos criar as variáveis que queremos
var values0 = [1, 2, 3, 4, 5]; converter de uma lista ordenada para uma lista de
valores

remap(clusters, alues0) Método dentro da função de cluster para utilizar as


amostra criadas anteriormente para treinar o
algoritmo de classificação

/// comentários do código


Resumindo, criamos uma lista de valores os clusters e queremos transformar em uma
lista não ordenada, para isso temos que remapear a imagem classificada antes no
nosso caso a variável result que contem a nossa classificação
Uso Descrição

clip Função para recortar uma imagem


Visualizando nossa classificação
Map.addLayer(recorte.randomVisualizer(), {}, 'Classificação - não supervisionada');
Calculo de área para imagem toda

Uso Descrição
ee.Image.pixelArea() Função dentro de GEE que executa o calculo
de área
.divide() Método dentro da função de calculo de área
que permite a conversão de unidade de
medidas
Valor para conversão de metro quadrado para
1e6 quilometro quadrado
addBands Método dentro da função Image que permite
aplicar uma função ou calculo em uma imagem
recorte .variável que contem a minha imagem
classificada
Uso Descrição
areas Variável denominada para calcular cada pedacinho e depois agrupa-los

reduceRegion Função do GEE que reduz todos ospedacinhos de cada classe me uma
única região
Argumento dentro da função de redução onde pode ser aplicado a função
reducer: de soma de cada pedacinho
ee.Reducer.sum().group Função para calcular cada pedacinho e agrupa-los em uma única classe

groupField: Agrumado da função de soma e agrupamento que precisa ser configurada


com pelo menos um dos campos da nossa classificação
Uso Descrição
groupName: Argumeto da função de soma e agrupamento que
requer o valor da propriedade da nossa classificação
Uso Descrição
geometry A região sobre a qual reduzir os

scale Uma escala nominal em metros da projeção para trabalhar.

bestEffort Se o polígono contiver muitos pixels na escala fornecida, calcule e use uma
escala maior que permita que a operação seja bem-sucedida.
groupField: Agrumado da função de soma e agrupamento que precisa ser configurada
com pelo menos um dos campos da nossa classificação
maxPixels O número máximo de pixels a serem reduzidos.
Uso Descrição
tileScale Um fator de escala entre 0,1 e 16 usado para
ajustar o tamanho do bloco de
agregação; definir um tileScale maior (por
exemplo, 2 ou 4) usa blocos menores e pode
permitir cálculos que ficam sem memória com
o padrão.
Uso Descrição

ee.List() Função dentro do GEE que lista os dados

areas Variavel que foi aplicada o calculo de área e


agrupada
get Metodo da linguagem javascript que seleciona uma
propriedade nos metadados da imagem classificada
e calculada

group Propriedade criada na operação anterior de calculo


de área para cada classe e agrupamento
Criando
gráficos
// como a maioria das funções empregadas nesse bloco de código já foram utilizadas anterior mentes
, vamos explicar a logica desse bloco de código :

Criamos uma variável que calcula a área de cada pedacinho e agrupa em uma única região para cada
classe
// nesse bloco de código nos listamos nossas classes e aplicamos uma função do javascript para
mapear a imagem classificada e calculada para transformara-la em um dicionário

Dicionario - Nesta linguagem, um dicionário é uma espécie de estrutura de dados do tipo coleção. É,
portanto, um objeto que contém mais que um valor.

Agora vamos adicionas dois cabeçalhos para quando baixarmos os dados já


venham na tabela os nomes nas colunas
Pie

Uso Descrição

ui.Panel Função no GEE que cria um painel interatico

ui.Label Função aplicada detro do painel que imprime um


texto no painel
Pie

// nesse bloco de código , aplicamos um método que recupera os dados que foram convertidos para
um dicionário de objetos e associa a imagem que contem a classificação .

Essa função cria automaticamente um gráfico do tipo pizza


Baixando os arquivos CVS da nossa classificação

Vamos clicar na opção de expandir e


abrir em outra janela
• Obs.: REPETIR O PROCESSAMENTO DA CLASSIFICAÇÃO
DA PAISAGEM E A CRIAÇÃO DE SEU GRÁFICO PIZZA
PARA OS OUTROS ANOS DESEJADOS

SUGESTÃO: 2014, 2018 E 2022


REPETIR TAMBÉM A
INCREMENTAÇÃO DE MAPAS COM
CONVENÇÕES CARTOGRÁFICAS
PARA CADA UM DOS 3 ANOS

Você também pode gostar