Main Page
Apresentação
A formação e a disponibilização de conteúdos faz parte do ADN da Geomaster. Neste espaço, estamos a juntar todos os conteúdos das nossas formações, que ainda estão dispersos por vários sítios.
Onde e como pedir ajuda?
https://gis.stackexchange.com/
A Geomaster está oferecer suporte ao QGIS, de forma gratuita. Use o centro de suporte disponível em ticket.geomaster.pt.
Antes de pedir ajuda, faça o trabalho de casa. Pesquise na net se a questão já foi levantada e resolvida.
Para procurar nas listas do QGIS, use o endereço: http://osgeo-org.1560.x6.nabble.com/QGIS-f4099105.html
Requisitos
Para fazer os exercícios propostos, precisa de ter algum espaço livre e o software necessário instalado. Os exercícios são independentes do sistema operativo: tanto pode usar Linux, Windows ou macOS.
Máquina virtual OSGeo Live
Uma boa alternativa para a formação é a utilização da máquina virtual OSGeo Live que já tem todo o software SIG necessário.
Conteúdos
Sentinel-2 Image processing using QGIS+SCP
Notes from Sentinel-2 Image processing using QGIS+SCP course at Skovskolen, Nødebo.
Documentation:
Semi-Automatic Classification Plugin Documentation
Create a Copernicus Open Access Hub account
Search and download Sentinel-2 images
Search and download Landsat 8 images
Raster algebra: calculating indexes
Links
https://earth.esa.int/web/sentinel/technical-guides/sentinel-2-msi/msi-instrument
http://esa-sen4cap.org/content/eo-products
https://sentinel.esa.int/web/sentinel/user-guides/sentinel-2-msi/document-library
https://www.indexdatabase.de/db/s-single.php?id=96
https://land.copernicus.eu/global/products/ba
https://fromgistors.blogspot.com/2016/11/from-image-download-to-ndvi-calculation.html
http://www.qgis.pt/blog/2016/12/14/detecao-remota-com-o-qgis/ (em Português)
Wikidata Sixth Birthday
Objectivo
Fazer uma mapa:
- Mostrar as ruas, largos, praças e outros espaços com topónimos
- Poder filtrar por:
- sexo
- ocupação (religioso, militar poeta, escritor, político...
- século
- etc
Eventualmente, fazer um quantos gráficos, com percentagens:
- topónimos com nome de pessoas versus outras origens
- nomes de mulheres versus nomes de homens
- políticos versus artes e ciências
Problema
No OpenStreetMap não existe informação sobre as propriedades do topónimo. O topónimo pode estar escrito de diversas formas e contém partes que não interessam (Rua, Avenida, Prof, Doutor, etc). (Nota: cruzar com o dataset da Central de Dados dos Códigos Postais).
A Rua de São Tomé refere-se a uma pessoa?
Rua Egas Moniz. Qual Egas Moniz?
Solução
Wikidata! Diferença entre a página da Wikipédia do Egas Moniz e a da Wikidata da mesma pessoa.
Criei a entidade: https://www.wikidata.org/wiki/Q58129518
No OpenStreetMap já se usa uma tag wikidata para entidades geográficas bem conhecidas, como a Torre dos Clérigos.
Existe uma proposta para acrescentar a origem de um determinado nome, usando a tag name:etymology.
Limitações
Nem tudo está na Wikidata. Na verdade, existe pouca informação (sobre Portugal) no Wikidata.
No OpenStreetMap também não há muitas tags wikidata.
Resolução das limitações
Editar o OpenStreetMap e a Wikidata!
Nota: área pantanosa em relação às licenças: CC-0 versus ODBL.
Outras fontes de dados
Central de dados
http://centraldedados.pt/nomes_proprios/
Algum código de base
https://gitlab.com/pdiasalmeida/osm-street-names
Open Data Day, 2021
Publicado no diário do OpenStreetMap.
jgr@zoe:~/bonn/ownCloud/OSM/Endereços$ xmlstarlet format --indent-tab Addresses_0110_EPSG4258.gml > Addresses_0110_EPSG4258.formated.gml
ogrinfo -ro -so Addresses_0110_EPSG4258.formated.gml Address
ogrinfo -where gml_id="'pt.ine.add.PTCONT.25172'" Addresses_0110_EPSG4258.formated.gml Address
# USAR o driver GMLAS em vez de GML
ogrinfo -ro -so GMLAS:Addresses_0110_EPSG4258.formated.gml Address
ogrinfo -where id="'pt.ine.add.PTCONT.25172'" GMLAS:Addresses_0110_EPSG4258.formated.gml Address
GML_ATTRIBUTES_TO_OGR_FIELDS=YES ogrinfo -where gml_id="'pt.ine.add.PTCONT.25172'" Addresses_0110_EPSG4258.formated.gml Address
GML_SKIP_RESOLVE_ELEMS=NONE ogrinfo -where gml_id="'pt.ine.add.PTCONT.25172'" Addresses_0110_EPSG4258.formated.gml Address
GML_ATTRIBUTES_TO_OGR_FIELDS=YES GML_SKIP_RESOLVE_ELEMS=NONE ogr2ogr -f PostgreSQL PG:'service=ftth schemas=ilhavo' GMLAS:Addresses_0110_EPSG4258.formated.gml -nlt CONVERT_TO_LINEAR
ogr2ogr -f "ESRI Shapefile" ilhavo.shp PG:"service=ftth" "ilhavo.moradas"
Open Data Day, 2018
Serviços sobre os dados do OpenStreetMap
Dados OpenStreetMap no PostgreSQL
Routing com os dados do OpenStreetMap
SIG desktop com QGIS
Introdução à interface do QGIS, a visualização complementar de geometrias e dados, filtrar, selecionar, expressões, trabalhar com a seleção, etc.
Instalação QGIS no Windows com base no OSGeo4W
Instalação da primeira extensão QuickMapServices.
Os dados vectoriais referem-se a entidades que têm uma componente espacial (geográfica) e um conjunto de atributos.
Georreferenciação de imagens e criação de camadas
Geração de um modelo digital do terreno
Acrescentar melhorias aos formulários:
- campos que se atualizam automaticamente
- joins e formulários com combox
- um exemplo de uma relação master → detail
Ligação a uma base de dados Postgresql
Para rever ou eliminar...
Os dados raster referem-se a superfícies contínuas, cujas propriedades se vão alterando ao longo da superfície.
Visualizar dados raster, calculadora raster, calcular o aspecto, declives, mostrar um perfil.
Cruzar camadas, associar imagens, associar ações a entidades geográficas
Introdução à análise espacial: cálculo de áreas de influência, recorte em função da localização, etc.
SIG desktop com QGIS: Tópicos avançados
Edição de informação geográfica
O processamento com o QGIS é tão assustador como fabuloso. Assustador pela diversidade de alternativas que apresenta e fabuloso pela mesma razão. Além de todas as capacidades de processamento que tem no próprio código, O QGIS liga-se muito bem a outros software de processamento, como o GRASS, SAGA, Orfeo Toolbox, etc.
As imagens Sentinel são disponibilizadas pela ESA. O tratamento de imagens Sentinel-2 com a extensão Semi-Automatic Classification Plugin
Tratamento de imagens Sentinel
As imagens raster podem ser geridas a partir do sistema de ficheiros ou a partir da base de dados Postgresql.
Suporte Postgresql para rasters
O QGIS está escrito em C++ que é uma linguagem orientado a objetos, que gera código muito eficiente. O QGIS usa a biblioteca QT para todas as componentes de interface com o utilizador. Embora todo o núcleo esteja em C++, todas as funcionalidades são expostas para outras aplicações através de uma API que pode ser invocada a partir do Python. Ou seja, a partir de um programa Python, podemos comandar o QGIS e tirar partido de todas as suas funcionalidades.
Explorar o QGIS a partir do Python
Sobre a preparação desta formação
Base de dados espaciais com Postgresql
Data
Resource Watch – Monitoring the Planet's Pulse
Spatial Data Mining
- GeoDa is a free and open source software tool that serves as an introduction to spatial data analysis.
- GeoAnalysis library is a java-based open source for geospatial analysis.
QGIS na área da Saúde
QGIS na área da Arqueologia
Tratamento dos arqueossítios em http://www.geira.pt/arqueo/ListaArqueossitios.html
xml disponível em: http://www4.di.uminho.pt/~jcr/XML/didac/xmldocs/arq.xml
wget http://www4.di.uminho.pt/~jcr/XML/didac/xmldocs/arq.xml
xsltproc sample.xsl arq.xml > arq.csv
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output type="text" indent="no" omit-xml-declaration="yes" />
<xsl:strip-space elements="*" />
<xsl:template match="//ARQELEM">
<xsl:value-of select="normalize-space(IDENTI)"/>|<xsl:value-of select="normalize-space(DESCRI)"/>|<xsl:value-of select="normalize-space(CRONO)"/>|<xsl:value-of select="normalize-space(FREGUE)"/>|<xsl:value-of select="normalize-space(CONCEL)"/>|<xsl:value-of select="normalize-space(LATITU)"/>|<xsl:value-of select="normalize-space(LONGIT)"/>|<xsl:value-of select="normalize-space(ALTITU)"/>|<xsl:value-of select="normalize-space(ACESSO)"/>|<xsl:value-of select="normalize-space(QUADRO)"/>|<xsl:value-of select="normalize-space(TRAARQ)"/>|<xsl:value-of select="normalize-space(DESARQ)"/>|<xsl:value-of select="normalize-space(INTERP)"/><xsl:text>
</xsl:text>
</xsl:template>
</xsl:stylesheet>
Tratamento manual:
coordenadas: multiplicar por 1000
usar o separador de campos: |
usar o delimitador de campos: '
Sistemas de coordenadas: EPSG:20790
Resultado final: arqueossitios.csv
Portal do Arqueólogo
Acabei por sacar pelo QGIS, ligando-me ao servidor.
Dados de ligação:
1) É preciso criar uma nova ligação do tipo: ArcGisFeatureServer, com os seguintes dados:
Nome: Portal do Arqueólogo
Sacar lista de sítios
#!/bin/bash
mkdir -p portalarqueologo
for i in {1..1735}
do
curl "http://arqueologia.patrimoniocultural.pt/index.php?sid=sitios&p=$i" -o portalarqueologo/$i.html
done
cd portalarqueologo/
sed -n -e 's/<td data-label="Designação"><a href="\/index.php?sid=sitios\&subsid=\([0-9]\+\)">\([^<]\+\)<\/a><\/td>/\1\t\2\thttp:\/\/arqueologia.patrimoniocultural.pt\/index.php?sid=sitios\&subsid=\1/p' *.html | sed 's/^\s\+//g' > lista_sitios.csv
Sacar sítios
Extrair coordenadas
jgr@zoe:~/bin/sitios$ grep '
sed -n -e 's/\(^[0-9]\+\).html:\s\+<div id="singleListingMap" data-latitude="\([0-9.]\+\)" data-longitude="\([-0-9.]\+\)".\+$/\1\t\2\t\3/p' x
Monte da Matosa 2
Sítio (13709) grep '[^<]\+
Sítio ([\d]\+)' *.html
QGIS
Abrir lista_sitios.csv
Abrir
Dados do OpenStreetMap
- Introdução ao OpenStreetMap
- Dados do OpenStreetMap no QGIS
- Dados do OpenStreetMap no Postgresql
- Queries com OverPass API, http://overpass-turbo.eu/
- Routing com os dados do OpenStreetMap (OpenTripPlanner)
- Routing com MAPS.ME
- Usar os mapas do OpenStreetMap num blog
Requisitos
- Computador c/ algum espaço livre
- Dados: serão descarregados na hora, a partir de: http://openstreetmap.pt/wp-content/uploads/
- Software
- QGIS 2.18.17 LTR
- Postgresql v9.6 + PostGIS (não é preciso instalar; haverá um servidor na sala)
- Instalar o MAPS.ME no telemóvel
Publicação na Web com Geoserver
Servidores de mapas: conceitos
Disponibilização de uma camada WMS/WFS
Disponibilização de uma camada WMTS
Publicação na Web com uMap
A plataforma uMap permite criar mapas de uma forma simples. Os mapas criados podem ser incorporados num blog ou num site.
O meu primeiro mapa com o uMap
Drones
Contribuir para projectos Open Source no domínio dos SIG
Contribuir para o OpenTripPlanner
Contribuir para o curso PostGIS com Rasters
Outros cursos e recursos
ISPRS Congress 2016 Summer School
Working with Sentinel 2 Imagery on QGIS
Spatial-Temporal Data Analysis
Propostas
QGIS: Generalização Cartográfica, em parceria com IBGE
QGIS: Deteção de estradas em imagens Sentinel-2, em parceria com IBGE
QGIS: Ler cartas náuticas, em parceria com a comunidade QGIS e de acordo com esta proposta de melhoramento
QGIS: Carregar informação meteorológica, em parceria com a comunidade QGIS e de acordo com esta proposta de melhoramento
QGIS:Plugin para sobre a Saúde em Portugal
Modelo Topográfico
vi sed.txt 1s/codigoViaRodov/codigo_via_rodov/ 1s/tipoViaRodovC/tipo_rodovia_c/ 1s/codigoDGT/codigo_dgt/ 1s/codigoArruamento/codigo_arruamento/ 1s/tipoViaRodovD/tipo_rodovia_d/ 1s/tipoViaRodovAbv/tipo_rodovia_abv/ 1s/nomeSufixo/nome_sufixo/ 1s/nomeAlternativo/nome_alternativo/ 1s/pontosExtremoseIntermedios/pontos_extremos_e_intermedios/ 1s/lugarINEcod/lugar_ine_cod/ 1s/fonteAquisicaoDados/fonte_aquisicao_dados/ 1s/dataEdital/data_edital/ 1s/DICOFRE/dicofre/ 1s/DICO/dico/ 1s/DI/di/ 1s/CO/co/ 1s/dataCat/data_cat/ sed -f sed.txt -i CatalogoDasViasRodoviariasParte2UTF-8_20190703.csv

