O GeoFiltro é uma aplicação desktop desenvolvida em Python para busca, filtragem e processamento de imagens de sensoriamento remoto da missão Sentinel-2.
O projeto foi criado para resolver um problema comum em fluxos de análise geoespacial:
A porcentagem de nuvens retornada pelos catálogos do Sentinel Hub/CDSE normalmente representa o tile inteiro da cena, e não necessariamente a área específica de interesse do usuário.
Na prática, isso significa que uma imagem pode apresentar:
- baixa cobertura de nuvens nos metadados;
- mas estar completamente inutilizável no recorte real da análise.
O GeoFiltro resolve esse problema realizando a análise de cobertura de nuvens diretamente sobre a AOI (Area of Interest) definida pelo usuário através de um arquivo .geojson.
A aplicação integra:
- 🛰️ imagens Sentinel-2 L1C;
- ☁️ análise de nuvens com s2cloudless;
- 🌍 integração com Sentinel Hub / Copernicus Data Space Ecosystem (CDSE);
- 🧭 processamento geoespacial sobre recortes reais;
- 📊 geração de produtos espectrais e visualizações.
O objetivo do GeoFiltro é reduzir o tempo gasto no pré-processamento e seleção manual de imagens de satélite, permitindo:
- selecionar automaticamente cenas com baixa cobertura de nuvens;
- validar imagens usando apenas a região de interesse;
- acelerar análises temporais;
- melhorar a qualidade de conjuntos de dados para estudos ambientais, agrícolas e geoespaciais.
A interface de autenticação permite:
- cadastro de usuários;
- armazenamento local de credenciais;
- reutilização de contas existentes;
- autenticação com Sentinel Hub/CDSE.
O dashboard central reúne:
- painel de busca;
- carregamento de GeoJSON;
- tabela de resultados;
- seleção de cenas;
- geração de produtos;
- visualização das imagens processadas.
A tela de visualização permite:
- visualização da cena processada;
- exportação em PNG 🖼️;
- exportação em GeoTIFF 🌍.
Os produtos identificados no código-fonte incluem:
| Produto | Descrição |
|---|---|
| RGB Natural | Composição colorida natural |
| False Color | Realce de vegetação e umidade |
| NDVI | Índice de vegetação |
| Máscara de Nuvens | Resultado da detecção de nuvens |
Outros produtos espectrais podem ser adicionados futuramente conforme a expansão do sistema.
Antes de iniciar, instale:
- Python 3.11+
- Git
- Ambiente virtual (
venv)
git clone https://github.com/SarWillyan/GeoFiltro.git
cd GeoFiltropython -m venv venv
venv\Scripts\activatepython3 -m venv venv
source venv/bin/activatepip install -r requirements.txtO ponto de entrada identificado no projeto é:
python main.pyO sistema necessita de credenciais válidas do Copernicus Data Space Ecosystem (CDSE).
- Criar uma conta no portal oficial do CDSE (em login selecione Sentinel Hub);
- Na tela de Dashboard, selecione
User settingsno menu lateral; - Em
OAuth clients, clique em+ Create; - De um nome, selecione uma data de expiração ou defina para nunca expirar, clique em criar;
- Utilizar essas credenciais na tela de login do GeoFiltro.
As credenciais são utilizadas para autenticação OAuth2 junto aos serviços Sentinel Hub.
O GeoFiltro pode ser utilizado em diferentes cenários de análise geoespacial.
- análise de safras;
- acompanhamento de vegetação;
- seleção automática de cenas úteis.
- monitoramento de cobertura vegetal;
- análise de áreas degradadas;
- avaliação temporal de mudanças.
- eliminação de cenas inviáveis;
- otimização de pipelines de pré-processamento.
Possíveis evoluções do projeto:
- suporte a Sentinel-2 L2A para produtos;
- novos índices espectrais;
- cache local de cenas;
- exportações adicionais;
- geração automática de relatórios.
Contribuições são bem-vindas.
Caso deseje colaborar:
- faça um fork do projeto;
- crie uma branch para sua feature;
- envie um pull request.


