Skip to content

Executable Research Compendium para a geração de mapas de Uso e Cobertura da Terra utilizando Cubos de dados de imagens de Satélite

License

Unknown, MIT licenses found

Licenses found

Unknown
LICENSE
MIT
LICENSE.md
Notifications You must be signed in to change notification settings

storm-platform/experiment-rep-cbersdatacube

Repository files navigation

CBERS Data Cube - Compendium de replicação

rc

Repositório com um Executable Research Compendium (ERC) para a geração de mapas de Uso e Cobertura da Terra utilizando Cubos de dados de imagens de Satélite.

Este ERC contém o código e o workflow necessário para a replicação da metodologia apresentada em:

Picoli et al, (2020). CBERS Data Cube: A powerful technology for mapping and monitoring brazilian biomes. ISPRS Annals of the Photogrammetry, Remote Sensing and Spatial Information Sciences, XXIV ISPRS Congress (2020 edition) 10.5194/isprs-annals-V-3-2020-533-2020

Conteúdo

O diretório analysis contém:

  • 📁 brick-creation: Jupyter Notebok para a preparação dos dados para a classificação. Inicialmente o script realiza o download e recorte das cenas considerando uma região de interesse. Em seguida são calculados os índices espectrais EVI, GEMI, GNDVI, NDWI2 e PVR. Por fim, cada um dos rasters gerados são organizados no tempo, em arquivos únicos, formando Raster Bricks para a classificação;
  • 📁 brick-classification: Jupyter-Notebooks para a classificação. Consumindo dos Raster Bricks criados com os scripts do brick-creation, os dados são classificador. Para isto, é feito a utilização do algoritmo Random Forest. O algoritmo é treinado considerando as séries temporais extraídas dos Rasters Bricks, associadas a um conjunto de amostras disponibilizada pelos autores do artigo que está sendo replicado;

O diretório library contém:

  • 📁 rep_cbers_cube: Biblioteca de código escrita na linguagem Python, com todas as funções auxiliares utilizadas para a organização e processamento dos dados. Esta biblioteca é consumida pelos Jupyter Notebooks dos diretórios brick-creation e brick-classification.

O diretório environment contém:

  • 📁 R/Python Images: Docker Images conténdo os ambientes computacionais, com os requisitos necessários para a execução e reprodução desta replicação

O diretório cwl contém:

  • 📁 input/tools/workflows: Para tornar mais fácil a execução, reprodução e possívelmente distribuição do fluxo de trabalho desenvolvido para a replicação, todas as etapas são escritas utilizando a Common Workflow Language (CWL). Este diretório contém todos os workflows, tools e inputs definidos para a reprodução deste trabalho.

Por fim, no diretório data estão os conjuntos de dados utilizados nos scripts. O diretório contém inicialmente apenas os dados de amostra. Todos os demais dados são gerados durante a execução dos scripts.

Como fazer a execução

Esta replicação foi feita utilizando as linguagens de programação R e Python. Todas as dependências estão registradas dentro dos containers declarados no diretório environment.

Caso seja necessário, dentro de cada um dos ambientes, R e Python, estão disponíveis scripts build.sh que realizam a criação das imagens para a execução. Atualmente há disponível no DockerHub, ambas as imagens já prontas para uso, nos repositórios: rep-cbers-dc-r e rep-cbers-dc-python.

Para fazer a execução, basta realizar utilizar uma engine de execução do CWL. O script Makefile, contém instruções para a utilização da engine de referência da linguagem CWL (cwl-runner). Para fazer sua utilização, basta utilizar os comandos abaixo:

Instalação da cwltool

pip install cwltool cwlref-runner

Execução do workflow CWL

make replicate

Note que para a replicação, é necessário adicionar a variável de ambiente BDC_ACCESS_TOKEN. Após isto, a execução está pronta para ser realizada.

Branches

O repositório git utilizado para versionar o ERC, contém duas branches:

  • master: ERC com todo o material necessário para a replicação do artigo CBERS Data Cube;
  • rep-bdc-article: ERC utilizado para exemplificar a possibilidade de reutilização de todo o material apresentado no ERC original. Para isso, os códigos e workflows criados são utilizados para a replicação de um dos mapas de uso e cobertura da Terra apresentados no artigo Earth Observation Data Cubes for Brazil

Licenses

Textos e figuras: CC-BY-4.0

Código : See the DESCRIPTION file

Dados : CC-0 atribuição solicitada na reutilização

Contribuições

Agradecemos as contribuições de todos. Antes de começar, consulte nossas diretrizes para colaboradores. Este projeto é lançado com um Código de Conduta do Contribuinte. Ao participar deste projeto, você concorda em cumprir com seus termos.