Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
Gilberto Ribeiro de QueirozThales Sehn KörtingFabiano Morelli
SER-347 – Visão Geral do Curso
11 de Março de 2020
Docentes
Gilberto Ribeiro de Queiroz
Formação: • Bacharel em Ciência da Computação• Mestrado Computação Aplicada• Doutorado Computação Aplicada
Servidor: DPI/OBT desde 2005
Projetos P&D:• Brazil Data Cube; BONDS• e-Sensing, MSA-Sub2, Paulicéia• TerraLib/TerraView, TerraAmazon• TerraMA2 e TerraMA2-Q
Linhas de Pesquisa:• Geoinformática e Data Science
Disciplinas:• CAP241 – Computação Aplicada I• CAP349 – Bancos de Dados Geográficos• CAP394 – Introdução à Data Science• CAP395 – Geoinformática• SER347 – Introd. Prog. Sens. Remoto
Thales Sehn Körting
Formação: • Engenheiro da Computação• Mestrado em Computação Aplicada• Doutorado em Sensoriamento Remoto
Servidor: DPI/OBT desde 2013
Projetos P&D:• Brazil Data Cube• GeoDMA – Mineração de dados
Geográficos• Metadados para Big Data em
Sensoriamento Remoto• e-Sensing/TerraLib/TerraView
Linhas de Pesquisa:• Processamento de Imagens• Séries Temporais
Disciplinas:• SER347 – Introd. Prog. Sens. Remoto• SER411 – Tópicos Avançados em PDI• SER413 – PDI
Fabiano Morelli
Formação: • Oceanógrafo• Mestrado em Sensoriamento Remoto• Doutorado em Ciências
Servidor: OBT desde 2013
Projetos P&D:• Mapeamento de área queimada• Melhorias no Risco de Fogo• Avanços no TerraMA2
Linhas de Pesquisa:• Processamento Operacional de Imagens
de Satélites
Disciplinas:• SER347 – Introd. Prog. Sens. Remoto
Por que aprender a programar?
Era do Big Data...Open Data...
Satélites de Observação da TerraFonte: NASA (26/06/2016)
Aquarius
OSTM/Jason 2
QuikSCAT
Aqua
TRMM EO-1
Landsat 7ACRIMSAT
Terra
SORCE
GRACE
CALIPSO
CloudSatLandsat 8
Suomi NPP
Aura
Monitoramento do Desflorestamento da Amazônia(Imagens Landsat)
13 Novembro, 1986
30 Outubro, 2016
Imagens de SR desempenham um papel importante em LUCC em escalas regionais e globais
13 Novembro, 1986
30 Outubro, 2016
Satélites de Observação da TerraFonte: NASA (26/06/2016)
Aquarius
OSTM/Jason 2
QuikSCAT
Aqua
TRIMM EO-1
Landsat 7ACRIMSAT
Terra
SORCE
GRACE
CALIPSO
CloudSatLandsat 8
Suomi NPP
Aura
Diferentes sensores produzem dados em diferentes resoluções espaciais, temporais e espectrais.
Satélites de Observação da TerraFonte: NASA (26/06/2016)
Aquarius
OSTM/Jason 2
QuikSCAT
Aqua
TRIMM EO-1
Landsat 7ACRIMSAT
Terra
SORCE
GRACE
CALIPSO
CloudSatLandsat 8
Suomi NPP
Aura
Satélites de Observação da Terra produzem umagrande quantidade de dados geoespaciais.
Satélites de Observação da TerraFonte: NASA (26/06/2016)
Aquarius
OSTM/Jason 2
QuikSCAT
Aqua
TRMM EO-1
Landsat 7ACRIMSAT
Terra
SORCE
GRACE
CALIPSO
CloudSatLandsat 8
Suomi NPP
Aura
Satélites de Observação da TerraFonte: NASA (26/06/2016)
Aquarius
OSTM/Jason 2
QuikSCAT
Aqua
TRMM EO-1
Landsat 7ACRIMSAT
Terra
SORCE
GRACE
CALIPSO
CloudSatLandsat 8
Suomi NPP
Aura
Resolução Espacial → 250m1 Tile → 4.800 x 4.800 → ~23M Pixels
Res. Temporal → 16 dias → 23 imagens/anoFloresta Amazônica: 12 Tiles
.: 16 anos → ~190GB por banda
MOD13Q1
Focos de QueimadasFocos de Queimadas
Jul/2016
Jul/2016 → +1.2M focos
2016 → +11M focos
Aplicações Navegação por Satélite – Waze
Mapeamento Colaborativo – OpenStreetMap
Mapeamento Colaborativo – GeoWiki
Mapeamento da cobertura da terra - TerraBrasilis
FOSS...(Free and Open Source Software)
TerraView
QGIS
OpenJUMP
gvSIG
Armazenamento & Processamento
Processamento & Análise
Visualização
Open Science...
Por que aprender a programar?
• Open Data, Open Software e Open Science.
• Oferta de empregos (Data Scientist)!
• Divertido!
Objetivo e Organização
Objetivos do Curso
• Fornecer os conceitos básicos de programação aplicados ao domínio geoespacial.
• Explorar esses conceitos através de uma linguagem de programação moderna.
• Ensinar técnicas básicas para construção de programas, em especial, para manipulação de dados geoespaciais.
• Portanto, não será apenas um curso de Python!
Para quem é este curso?
• O curso é voltado para alunos com pouca ou nenhuma experiência prévia com programação.
• Alunos que desejam compreender abordagens computacionais básicas para solução de problemas.
• Servirá com uma primeira exposição à arte de programar.
• Será preciso muita paciência e perseverança!
Por que Python?
• Trata-se de uma linguagem de propósito geral que pode ser utilizada para construção de diversas aplicações.
• Grande parte dos elementos presentes nessa linguagem também encontram-se em outras linguagens de programação, o que propicia o reaproveitamento de diversos conceitos.
• Linguagem simples de aprender e usar.
• Por ser uma linguagem interpretada facilita seu uso por iniciantes na arte de programação.
Por que Python?
NumPy: arrays multidimensionais
matplotlib: gráficos e visualização de dados
SciPy: rotinas numéricas (integração e otimização)
pandas: proc. de dados estruturados (tabelas e planilhas)
GDAL/OGR: camada de abstração de dados geoespaciais
Por que Python?
Tópicos do Curso
• Introdução à Lógica de Programação com Python.
• Uso de IDE para criação de programas.
• Compartilhamento e Versionamento de código fonte.
• Organização do código fonte de um programa.
• Representação e Manipulação de Dados Geoespaciais.
• Ferramentas para Análise e Visualização de Dados Geoespaciais.
Ao final do curso, esperamos que vocês...• Sejam capazes de expressar a solução de um problema através de uma
linguagem de programação.
• Tenham aprendido o básico necessário para a criação de pequenos algoritmos na linguagem Python.
• Sejam capazes de organizar e compartilhar seus códigos.
• Tenham a base necessária para aprofundar os conhecimentos em programação bem como utilizar bibliotecas de apoio à solução de problemas nas teses e dissertações.
☞ Vocês serão bem-vindos a CAP-349 – Bancos de Dados Geográficos
☞ Vocês serão bem-vindos a CAP-394 – Introdução a Data Science
☞ Vocês serão bem-vindos a SER-413 – Processamento Digital de Imagens
Organização do Curso
• Aulas Teóricas e Práticas.
• Listas de exercícios regulares para ajudar a fixar os conceitos aprendidos em sala de aula:
• Penalidades por atraso!
• Desenvolvimento de um trabalho prático que deverá gerar um produto de dados.
Avaliação
• Listas de Exercícios: 20%
• Prova: 30%
• Trabalho Prático: 50%• Grupos de 2 ou 3 integrantes
Honor Code
1. Não copiar exercícios dos colegas em hipótese alguma!• Tente fazer seus exercícios de forma individual.• Discuta com seus colegas somente ideias e conceitos.• Cópias invalidarão a lista tanto de quem copiar quanto de quem
ceder a cópia.• Obs.: temos meios de detectar cópias!
2. Não entregar transcrições literais de material da Internet!• Utilize o material para inspiração, mas faça seu código a partir dele.
3. Em caso de dúvidas/dificuldades, procure os professores da disciplina durante os horários apropriados (veja office-hours) ou envie e-mail.
Contato
• Material do curso online:http://ser347.dpi.inpe.br
• Lista de e-mails para que os docentes comuniquem-se com os alunos de forma coletiva:[email protected]
• Os exercícios deverão ser entregues por e-mail:[email protected]
Ambiente de Trabalho
Distribuição Python: PSF
Distribuição Python: Anaconda
IDE: Spyder
IDE: Visual Studio Code
IDE: PyCharm
Ambiente Oficial do Curso
• Distribuição Anaconda:• https://www.anaconda.com/distribution/• Versão Anaconda3-2019.10 (Python 3.7)
• IDE PyCharm (Community):• https://www.jetbrains.com/pycharm• Versão 2019.3.3
Referências Bibliográficas
Python Software Foundation
• The Python Tutorial. Acesso: Março, 2020.
• The Python Language Reference. Acesso: Março, 2020.
• Beginner's Guide to Python. Acesso: Março, 2020.
Mark Lutz. Learning Python.5th Edition, O'Reilly Media. 2013. 1648 p.
Chris Garrard. Geoprocessing with Python.1st Edition, Manning Publications. 2016. 360 p.
Paul A. Longley, Michael F. Goodchild, David J. Maguire e David W. Rhind. Geographic Information Science and Systems.4th Edition. Wiley. 2015. 496 p.
John V. Guttag. Introduction to Computation and Programming Using Python: With
Application to Understanding Data.2nd Edition, MIT Press. 2016. 472 p.
Hans Petter Langtangen. A Primer on Scientific Programming with Python.4th Edition. Springer. 2014. 872 p.
Paul Gries, Jennifer Campbell, Jason Montojo. Practical Programming: An Introduction to
Computer Science Using Python 3.6.3rd Edition, Pragmatic Bookshelf. 2017. 412 p.
Bem vindos a SER-347!