sistemas de informações geográficas
DESCRIPTION
Sistemas de Informações Geográficas. Unidade 5: Análise de Dados Prof. Cláudio Baptista 2010.1. Medidas em SIG. O cálculo de comprimentos, perímetros e áreas é uma aplicação comum em SIG Em raster, estas medidas são aproximações, ao invés de valores exatos - PowerPoint PPT PresentationTRANSCRIPT
Sistemas de Informações Geográficas
Unidade 5: Análise de Dados
Prof. Cláudio Baptista
2010.1
Medidas em SIG O cálculo de comprimentos, perímetros e áreas é uma
aplicação comum em SIGEm raster, estas medidas são aproximações, ao invés
de valores exatosEx.: Em Raster, existem mais de uma resposta à
pergunta: qual a distância entre A e B? Onde A e B são dois pontos numa linha Uma solução é usar a distância Euclidiana AB2 = AC2 +
CB2
Outra solução é usar distância de Manhattan
Medidas em SIG
B B
A C A
Distância Euclidiana Distância Manhattan
Medidas em SIG
Para obter perímetro e área em raster devemos multiplicar o número de células que compõem os limites pela resolução de cada célula do grid.
Medidas em SIG
Em Vector, as medidas são calculadas usando o teorema de Pitáguras para obter-se a distância Euclidiana.
Geometria é usada para calcular perímetros e áreas
Estas medidas podem ser armazenadas como atributos de modo que só precisam ser calculadas uma única vez.
Consultas espaciais
Exemplos de esquemas1) Unidades admnistrativas
País
codigonomegeometria
Estado
códigonomegeometria
Cidade
códigonomepopulaçãogeometria
Consultas espaciais
Exemplos de esquemas2) Rodovias entre cidades
+começaEmRodovia
codigonometipo
Seção
códigonomenumeroLinhasgeometria
Cidade
códigonomepopulaçãogeometria
+terminaEm
Consultas espaciais
Exemplos de esquemas3) Uso da Terra (Land Use)
cada pedaço de terra no mapa represnta um tema:
• agricultura
• habitação
• floresta
Consultas espaciais
Consultas de referênciaTipos
Alfanumérico Espacial Interativa
Consultas espaciais
Consultas de referância Alfa_ADM1: Número de habitantes da cidade de
Campina Grande Alfa_AMD2. Lista das cidades do estado da Paraíba Alfa_ADM3. Número de habitantes no Brasil Alfa_Rodovia1: Número de linhas na primeira
seção da BR 230 Alfa_Rodovia2: Nome de todas as seções que
constituem BR-116.
Consultas espaciais
Consultas de referância Espac-ADM4. Cidades adjacentes à cidade
Cajazeiras num mesmo estado Espac_ADM5. Mostre o estado da Paraíba Espac_ADM6. Cidades maiores do que a maior
cidade da Paraíba Espac_Rodov3. Tamanho da rodovia BR-230 Espac_ADM_Rodo1. Mostre as rodovias que
passam pelo estado da Paraíba
Consultas espaciais
Consultas de referência Espac_ADM_UT1. Mostre todas as áreas
residenciais na cidade de Recife Espac_ADM_UT2. Faça um overlay dos temas
de unidades administrativas e uso da terra INTER_ADM7. Descrição da cidade apontada
na tela INTER_ADM8. Cidades que interteptam um
dado retângulo na tela
Consultas espaciais
Consultas de referência INTER_ADM9. Partes de cidades dentro de um
dado retângulo na tela INTER_Rodo5. Descrição de uma seção
apontada na tela INTER_Rodo6. Descrição da rodovia cuja
seção está sendo apontada na tela
Relacionamentos Espaciais
Disjoint Contain Equal
Meet Cover Overlap
Relacionamentos EspaciaisVários tipos
Topológico: disjoint, overlap, contains (reflexivo inside), meet, equal, cover( reflexivo covered_by)
Direcional: left, right, above, below, north, south, east, west, northeast, northwest, southest, southwest
Métrico: area, perimeter, length, distance, far, near, buffer
Rede: connected, next, previous, shortest_path Conjunto: intersection, union, difference, equals
Estendendo Modelo de Dados com TDA Espaciais
Conceitos básicos: Com TDA (Tipo Abstrato de Dados) Espaciais,
uma objeto espacial, é considerado como uma lista de operações que podemos executar neste independente de sua representação interna.
Exemplo: Interseção de dois objetos Modelo Espacial (estrutura de dados) versus
Modelo Geográfico (representação de entidades do mundo real
Estendendo Modelo de Dados com TDA Espaciais
Escolha de tipos apropriados
Pontos lineString lineString complex
Polygon Polygon set Misturado
Estendendo Modelo de Dados com TDA Espaciais
Definindo Operações sobre TDA Espaciais O resultado de uma operação espacial pode ser
um tipo atômico (integer, real, boolean) ou um dos três tipos espaciais: ponto, linha, polígono
Estendendo Modelo de Dados com TDA Espaciais
Ex. Interseção entre objetos espaciais
A
B
AB = 2 Polígonos;ou 2 polígonos e 1 linha; ou 2 polígonos, 1 ponto e 1 linha
Estendendo Modelo de Dados com TDA EspaciaisAPI do TDA Região:
PointInRegion (região, ponto): boolean (testa se um ponto pertence a uma região)
Overlaps(região, região):boolean ( testa se duas regiões interceptam
Clipping(região, retângulo): região (computa a interseção de uma região e um retângulo retornando uma região (possivelmente vazia))
Intersection(região, regiào): região (retorna a interseção de duas regiões, retorna uma região (possivelmente vazia)
Estendendo Modelo de Dados com TDA EspaciaisAPI do TDA Região:
Meets (região, região): boolean (testa a adjacência de duas regiões)
Area( região) : real (retorna a área da região) União (set{região}) : região (recebe um
conjunto de regiões e retorna uma região que representa a união das regiões de entrada.
Estendendo Modelo de Dados com TDA EspaciaisAPI do TDA Linha:
pointInLine(linha, ponto): boolean (testa a interseção entre a linha e um ponto
length(linha):real (computa o comprimento de uma linha)
overlapsLinhaRegião(linha, região): boolean (testa a interseção entre uma linha e uma região)
Estendendo Modelo de Dados com TDA EspaciaisAPI do TDA Ponto:
distance(region, ponto): real (computa a distância entre um ponto e as bordas de uma região)
distance(ponto, ponto): real (computa a distância entre dois pontos)
Projetando TDA EspaciaisOperações Unárias com resultado Boolean.
• Testam um objeto espacial com relação a uma propriedade dada. Exemplo teste de conectividade
Operações Unárias com resultado escalar• computar uma área, um comprimento, perímetro de um objeto
espacial
Operações Unárias com resultado Espacial• transformações topológicas (preservam os relacionamentos
topológicos) : rotação, translação, mudança de escala, simetria.
• Outras operações: buffer, boundary, MBR, centroid
Projetando TDA EspaciaisOperações Unárias com resultado Boolean.
• Testam um objeto espacial com relação a uma propriedade dada. Exemplo teste de conectividade
Operações Unárias com resultado escalar• computar uma área, um comprimento, perímetro de um objeto
espacial
Operações Unárias com resultado Espacial• transformações topológicas (preservam os relacionamentos
topológicos) : rotação, translação, mudança de escala, simetria.
• Outras operações: buffer, boundary, MBR, centroid
Projetando TDA EspaciaisOperações Binárias com resultado espacial
• operações de conjunto: interseção, união, diferença
• Ex. Parte das rodovias dentro do estado da Pb
Operações Binárias com resultado Boolean• usados seleção e junção espacial
• Predicados topológicos: intersects, contains, adjacent, enclosed_by, windowing
• Predicados de direção: acima, Norte
• Predicados métricos: distância
Projetando TDA EspaciaisOperações Binárias com resultado escalar
distância entre uma rodovia e uma cidade
Algumas observações importantes:• A interseção de dois polígono é um conjunto de poligonos
• A interseção de uma linha e uma região retorna vários pontos (não necessariamente uma linha)
• A união de dois linestrings (polylines) não é um linestring
• A diferença de dois polígonos sem buracos pode ser um polígono com buraco
Explorando relacionamentos entre Objetos espaciais
Uma definição formal dos relacionamentos espacias se faz necessária para clarificar os vários entendimentos destes relacionamentos entre usuários
Enfocaremos relacionamentos topológicos entre dois objetos no plano.
Seja b(A) = boundary (borda) do objeto A e i (A) = interior do objeto A
Explorando relacionamentos entre Objetos espaciais
b(A) b(B) i(A)i(B) b(A)i(B) i(A)b(B) Relacionamento
{} {} {} {} A disjoint B~{} {} {} {} A meets B
~{} ~{} {} {} A equals B{} ~{} ~{} {} A inside B
~{} ~{} ~{} {} B covers A{} ~{} {} ~{} B inside A~{} ~{} {} ~{} A covers B~{} ~{} ~{} ~{} A overlaps B
Onde: {} representa conjunto vazio e ~{} representa conjunto não-vazio
Uso do modelo OR para funcionalidade espacial
Usando SGBDOR (Objeto-Relacional) permite usuários não só usar os tipos definidos pelo SGBD como também definir e usar TADs.
Criando o BD para aplicação Administrativa
Create table Pais ( create table Estado (codigo integer, codigo integer,nome varchar(30), nome varchar(30),geometria polígono, codPais int,primary key (codigo)); geometria polígono,
primary key(codigo),foreign key(codPais)references Pais(codigo))
Uso do modelo OR para funcionalidade espacial
Create table Cidade (codigo integer,nome varchar(30),populacao: int,codEstado int,geometria polígono,primary key (codigo),foreign key(codEstado) references Estado(codigo)
);
Obs. Poderiamos ter apenas a geometria em cidades e ai derivaríamospara estado e país, porém é muito custoso computar a geometria deum estado através da união de todos as cidades e assim por diante!E o atributo população que está apenas na cidade?
Uso do modelo OR para funcionalidade espacial
Aplicação de RodoviasCreate table Rodovia ( create table Secao(
codigo int, codigo int,nome varchar(5), nome varchar(4),tipo varchar(2), númeroLinhas int,primary key(2) cidadeIni varchar(30),
); cidadeFim varchar(30),geometria line,
create table SeçãoRodovia ( primary key(codigo),codSecao int, foreign key(cidadeIni) references Cidade,numeroSecao int, foreign key(cidadeFim) references Cidade);codRodovia int,primary key(codSecao, codRodovia),foreign key (codSecao) references Secao(codigo),foreign key(codRodovia) references Rodovia(codigo)
)
Uso do modelo OR para funcionalidade espacial
Aplicação de Rodoviascreate table Secao(
codigo int,nome varchar(4),númeroLinhas int,cidadeIni varchar(30),cidadeFim varchar(30),geometria line,primary key(codigo),foreign key(cidadeIni) references Cidade,foreign key(cidadeFim) references Cidade);
create table cidade (nome varchar(30),populacao int,geometria poligono,primary key(nome))
Uso do modelo OR para funcionalidade espacial
Aplicação Uso da Terra
create table UsoTerra (nomeRegiao varchar(30),tipoUsoTerra varchar(30)mgeometria poligono,primary key(nomeRegiao)
);
Uso do modelo OR para funcionalidade espacial
Consultas :
ALFA_ADM1: Número de habitantes do estado da Paraíba
select populacaofrom Estadowhere nome = ‘Paraiba’
ALFA_ADM2: Liste os nomes das cidades no estado da Paraiba
select nomefrom Estado e, Cidade cwhere e.codigo = c.codigo and e.nome = ‘Paraiba’
Uso do modelo OR para funcionalidade espacial
Consultas :ALFA_ADM3. Número de habitantes do Brasilselect sum(c.populacao)from Pais p, Estado e, Cidade cwhere p.nome = ‘Brasil’ and e.codigo = c.codEstadoand p.codigo = e.codPais
ALFA_R1: Número de linhas na primeira seção da BR-230select s.numeroLinhasfrom RodoviaSecao rs, Rodovia r, Secao swhere r.codigo = rs.codRodovia and rs.codSecao = s.codigoand r.nome = ‘BR230’ and rs.numeroSecao = 1
Uso do modelo OR para funcionalidade espacialConsultas :Alfa_R2. Nomes de seções que constituem a BR230select s.nomefrom RodoviaSecao rs, Rodovia r, Secao swhere r.nome = ‘BR230’ and r.codigo = rs.codRodovia andrs.codSecao = s.codigo
ESPAC_ADM4. Cidades adjacentes à cidade de Cajazeiras no mesmo estadoselect c1.nomefrom Cidade c1, Cidade c2where c2.nome = ‘Cajazeiras’and c1.codEstado = c2.codEstadoand Meets (c1.geometria, c2.geometria)
Uso do modelo OR para funcionalidade espacialConsultas :ESPAC_ADM5. Mostre o estado da Paraíbaselect geometriafrom Estadowhere nome = ‘Paraiba’
SE a geometria tivesse sido armazenada apenas nas cidades a queryanterior ficariaselect RegionUnion(c.geometria)from Cidade c, Estado where e.codigo = c.codEstado and e.nome = ‘Paraiba’
Uso do modelo OR para funcionalidade espacialConsultas :ESPAC_ADM6: Cidades maiores do que a maior cidade da Paraíba
select nomefrom Cidadewhere Area(geometria) >
(select max (Area(c.geometria)) from Cidade c, Estado e where e.codigo = c.codEstado and e.nome = ‘Paraiba’)
Uso do modelo OR para funcionalidade espacialConsultas :ESPAC_R3. Comprimento da rodovia BR230
select sum(Length(s.geometria))from Rodovia r, RodoviaSecao rs, Secao swhere r.nome = ‘BR230’ and r.codigo = rs.codRodovia and
rs.codSecao = s.codigo
ESPAC_ADMR1. Todas as rodovias que passam pela Paraíbaselect distinct r.nomefrom Estado e, Rodovia r, RodoviaSecao rs, Secao swhere e.nome = ‘Paraiba’ and r.codigo = rs.codRodovia andrs.codSecao = s.codigo andOverlaps (s.geometria, e.geometria)
Uso do modelo OR para funcionalidade espacial
Consultas :ESPAC_ADM_UT1. Mostre todas as áreas residenciais na cidade de Recifeselect Intersection(u.geometria, c.geometria)from Cidade c, UsoTerra uwhere c.nome = ‘Recife’and u.tipoUsoTerra = ‘area residencial’and Overlaps(u.geometria, c.geometria)
ESPAC_ADM_UT2: Overlay de temas de cidades e uso da terraselect c.nome, u.tipoUsoTerra, Intersection(c.geometria, u.geometria)from Cidade c, UsoTerra uwhere Overlaps(c.geometria, u.geometria)
Uso do modelo OR para funcionalidade espacial
Consultas :INTER_ADM7. Descrição da cidade apontada na telaselect nome, populacaofrom Cidadewhere PointInRegion(geometria, @point)
INTER_ADM8. Cidades que interceptam um dado retângulo na telaselect nomefrom Cidadewhere OverlapsRect(geometria, @rectangle)
Uso do modelo OR para funcionalidade espacial
Consultas :INTER_ADM9. Partes de cidade que estão dentro de um dadoretângulo na tela
select Clipping(geometria, @rectangle)from Cidadewhere Overlaps(geometria, @rectangle)
INTER_R5. Descrição da seção apontada na telaselect nome, numeroLinhasfrom Secaowhere PointInLine(geometria, @point)
Uso do modelo OR para funcionalidade espacial
Consultas :INTER_R6. Descrição das rodovias cuja seção está apontada na tela
select r.nome, r.tipofrom RodoviaSecao rs, Rodovia r, Secao swhere rs.codRodovia = r.codigo and rs.codSecao = s.codigoand PointInLine(s.geometria, @ point)
Análise: Básica
Operações espaciaisVector determinação de
centróide medidas espaciais análise de buffer agregação espacial overlays e joins
espaciais Raster análise de vizinhança modelagem Raster
Operações não espaciais
seleção de registros• tabular via SQL
• ‘information clicking’ com cursor
agregação de registros análise estatistica joins de tabelas
Análise: Avançada & EspecializadaAvançada análise de superfície análise de proximidade
nearest neighbor layer distance matrix layer
análise de rede roteamento
• shortest path (2 points)
• travelling salesman (n points)
Especializada Processamento e classificação de
Imagem de Sensoriamento Remoto modelagem raster modelagem de superfícies 3-
D estatísticas espaciais funcionalidade especializada
modelo de transportes modelo de uso da terra modelo hidrológico etc.
Operações Espaciais:Centróide ou Mean Center
Ponto de balanço para distribuição espacial representação de ponto para um polígono--análogo à média pode ser ponderado pela ‘magnitude’ de cada ponto (análogo à média ponderada)
usado para sumarizar mudança ao longo do tempo numa distribuição (ex. Centróide da
população do Brasil a cada 10 anos) colocar labels em polígonos
centroide fora do polígono
XX
nY
Y
n
i
i
n
i
i
n
1 1,
Note: muitas aplicações ArcView calculam apenas um “psuedo” centroid: as coordenadas do MBR do polígono!
Operações Espaciais: Medidas Espaciais
Medidas Espaciais: medidas de distância
entre pontos de ponto ou raster para um
polígono entre centroides de polígonos
área de um polígono perímetro de um polígono forma (shape) de um polígono cálculo de volume
ex. para reservatórios
determinação de direção ex. nuvens de fumaça
Comentários: possíveis métricas de distância:
linha reta/linha aérea métrica de blocos de cidade
(manhattan metric) distância através de rede
forma (shape) é medido por:perimetro
area x 3.54= 1.0 para círculo= 1.13 para quadrado
= número grande para polígono irregular
Operações Espaciais: buffer zones região dentro de distância ‘x’
units buffer em qualquer objeto:
ponto, linha ou polígono Implementado em Arcview
3.2 com Theme/Create buffers em ArcGIS 8.1
com Tools/Buffer Wizard
Exemplos buffer de 200 metros ao redor
de uma propriedade buffer de 100 ft de um rio
limitando desenvolvimento buffer de zona de 3 km dos
limites de uma cidade mostrando a sua área distrital
usado para definir (ou excluir) áreas como opção para futura análise
polygon buffer
linebuffer
point buffers
Critérios de agrupamento podem ser: formal (baseados em caracteristicas dos objetos)
ex. vizinhança de cidades funcional (baseado em links):
ex. zonas de comutação
Pode ser: contíguo não-contíguo
Bordas originais de polígonos podem ser:: preservadas removidas (dissolving)
Exemplos: zonas de escola a zonas universitárias (funcional districting) blocos de cidade em distritos legislativos (formal districting) criação de distritos de polícia (funct. reg.) criação de mapa de vizinhança de cidade(form. reg.) agrupando dados de censo em segmentos de marketing --
yuppies, nerds, etc (class.)
Operações Espaciais:agregação espacial districting/redistricting
agrupar polígonos contíguos em distritos
polígonos originais preservados Regionalização (ou dissolving)
agrupar poligonos em regiões contíguas
bordas dos polígonos originais dissolvidas
classificação agrupar poligonos em regiões
não-contíguas bordas originais usualmente
dissolvidas
Districting: elementary school attendance zones grouped to form junior high zones.
Regionalization: census tracts grouped into neighborhoods
Classification: cities categorized as central city or suburbssoils classified as igneous, sedimentary, metamorphic
Operações Espaciais Spatial Joins e Overlays
combina duas (ou mais) camadas para: selecionar features numa camada, ou criar uma nova camada
usado para integrar dados com diferentes propriedades espaciais (ponto v. poligono)
pode fazer overlay de polígonos em: pontos (ponto em poligono) linhas (linha em poligono) outros poligonos (poligono em poligono) diferentes possíveis combinações de
lógica Booleana • Union (A or B)• Intersection (A and B)• A and not B ; not (A and B)
pode fazer overlay de pontos em: Pontos, que encontra e calcula a distância
ao ponto mais próximo em outro tema Linha, que calcula a distância para a
linha mais próxima
Exemplos atribuir amostras ambientais
(pontos) para o censo para estimar exposição per capita (ponto em poligono)
identificar terrenos atravessados por uma rodovia para estudo de vizinhança (poligono em linhas)
integrar dados de censo com dados de casas para vender (poligono em poligono)
Join do tema cidades capital com tema todas cidades para calcular a distância de cidade para a capital de estado mais próxima(ponto em ponto)
•ERASE - apaga as features do mapa que sobrepõe com os poligonos da região selecianada para o erase.
•CLIP - extrai as features do mapa que sobrepõe com região selecianada para o clip.
Exemplo: Spatial Matching: Clipping e Erasing
Exemplo: Spatial Matching via Overlay de Polígono-em-Polígono
Bacias de Drenagem
Os dois temas ( uso da terra & bacias de drenagem) não têm bordas comuns. O SIG cria uma camada combinada permitindo o cálculo de uso da terra por bacia de drenagem.
a. b. c.
aGaA bA
bGcAcG
Uso da terra
A.G.
Atlântico
Golfo
Camada combinada
Operações Espaciais:modelagem baseada em raster
Processos podem ser: Local: um célula apenas Vizinhança: células relativas
as outras Zonal: células numa dada
seção Global: todas células
Operações não Espaciais:
Tabular crie consulta usando SQL (com junções ou
não)
Gráfico (selecione pela localização) com cursor no mapa (use Select Features tool)
num ponto dentro de um retângulo dentro de um raio (circulo) ao redor de um ponto
Saída pode ser: registros highlighted numa
tabela, e features highlighted num mapa simultaneamente
Novas tabelas e mapa layers
Exemplos Use SQL query para
selecionar todos os CEPs cuja média de arrecadação é superior a R$2.000,00
identificar CEPs dentro de um raio de 5 KM radius of vários potenciais sites de comércio
mostrarcasas à venda no mapa, e clique para obter uma foto da casa selecionada e dados adicionais
Aplicações Avançadas:Análise de RedeRoteamento menor caminho entre dois
pontos instruções de direção
(localizar um hotel a partir do aeroporto)
travelling salesman: menor caminho conectando n pontos
rota de ônibus, serviços de entrega
Districting baseado em rede expande o site ao longo da rede até um
critério (tempo, distância, custo, object count) ser alcançado; então atribuir área ao distrito
criar áreas de marketing, etc essencialmente network-based
buffering
Alocação baseada em rede atribui localizações ao centro mais
próximo baseado na viagem ao longo da rede
atribuir clientes a entregadores de pizza.
Em todos os casos, ‘distância’ pode ser medida em km, tempo, custo ou outros (ex. diâmetro de um cano de água, esgoto etc.). Atributos de arcos ou nodos (ex. rua mão única, não pode dobrar à esquerda) pode também ser crítico.