570 likes | 671 Views
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
E N D
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 • Ex.: 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 esquemas • 1) Unidades admnistrativas
Consultas espaciais • Exemplos de esquemas • 2) Rodovias entre cidades
Consultas espaciais • Exemplos de esquemas • 3) Uso da Terra (Land Use) • cada pedaço de terra no mapa represnta um tema: • agricultura • habitação • floresta
Consultas espaciais • Consultas de referência • Tipos • 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 Espaciais • Vá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 Espaciais • API 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 Espaciais • API 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 Espaciais • API 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 Espaciais • API 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 Espaciais • Operaçõ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 Espaciais • Operaçõ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 Espaciais • Operaçõ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 Espaciais • Operaçõ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 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íamos para estado e país, porém é muito custoso computar a geometria de um 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 Rodovias Create 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 Rodovias create 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)m geometria poligono, primary key(nomeRegiao) );
Uso do modelo OR para funcionalidade espacial Consultas : ALFA_ADM1: Número de habitantes do estado da Paraíba select populacao from Estado where nome = ‘Paraiba’ ALFA_ADM2: Liste os nomes das cidades no estado da Paraiba select nome from Estado e, Cidade c where e.codigo = c.codigo and e.nome = ‘Paraiba’
Uso do modelo OR para funcionalidade espacial Consultas : ALFA_ADM3. Número de habitantes do Brasil select sum(c.populacao) from Pais p, Estado e, Cidade c where p.nome = ‘Brasil’ and e.codigo = c.codEstado and p.codigo = e.codPais ALFA_R1: Número de linhas na primeira seção da BR-230 select s.numeroLinhas from RodoviaSecao rs, Rodovia r, Secao s where r.codigo = rs.codRodovia and rs.codSecao = s.codigo and r.nome = ‘BR230’ and rs.numeroSecao = 1
Uso do modelo OR para funcionalidade espacial Consultas : Alfa_R2. Nomes de seções que constituem a BR230 select s.nome from RodoviaSecao rs, Rodovia r, Secao s where r.nome = ‘BR230’ and r.codigo = rs.codRodovia and rs.codSecao = s.codigo ESPAC_ADM4. Cidades adjacentes à cidade de Cajazeiras no mesmo estado select c1.nome from Cidade c1, Cidade c2 where c2.nome = ‘Cajazeiras’ and c1.codEstado = c2.codEstado and Meets (c1.geometria, c2.geometria)
Uso do modelo OR para funcionalidade espacial Consultas : ESPAC_ADM5. Mostre o estado da Paraíba select geometria from Estado where nome = ‘Paraiba’ SE a geometria tivesse sido armazenada apenas nas cidades a query anterior ficaria select RegionUnion(c.geometria) from Cidade c, Estado where e.codigo = c.codEstado and e.nome = ‘Paraiba’
Uso do modelo OR para funcionalidade espacial Consultas : ESPAC_ADM6: Cidades maiores do que a maior cidade da Paraíba select nome from Cidade where 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 espacial Consultas : ESPAC_R3. Comprimento da rodovia BR230 select sum(Length(s.geometria)) from Rodovia r, RodoviaSecao rs, Secao s where r.nome = ‘BR230’ and r.codigo = rs.codRodovia and rs.codSecao = s.codigo ESPAC_ADMR1. Todas as rodovias que passam pela Paraíba select distinct r.nome from Estado e, Rodovia r, RodoviaSecao rs, Secao s where e.nome = ‘Paraiba’ and r.codigo = rs.codRodovia and rs.codSecao = s.codigo and Overlaps (s.geometria, e.geometria)
Uso do modelo OR para funcionalidade espacial Consultas : ESPAC_ADM_UT1. Mostre todas as áreas residenciais na cidade de Recife select Intersection(u.geometria, c.geometria) from Cidade c, UsoTerra u where 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 terra select c.nome, u.tipoUsoTerra, Intersection(c.geometria, u.geometria) from Cidade c, UsoTerra u where Overlaps(c.geometria, u.geometria)
Uso do modelo OR para funcionalidade espacial Consultas : INTER_ADM7. Descrição da cidade apontada na tela select nome, populacao from Cidade where PointInRegion(geometria, @point) INTER_ADM8. Cidades que interceptam um dado retângulo na tela select nome from Cidade where OverlapsRect(geometria, @rectangle)
Uso do modelo OR para funcionalidade espacial Consultas : INTER_ADM9. Partes de cidade que estão dentro de um dado retângulo na tela select Clipping(geometria, @rectangle) from Cidade where Overlaps(geometria, @rectangle) INTER_R5. Descrição da seção apontada na tela select nome, numeroLinhas from Secao where 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.tipo from RodoviaSecao rs, Rodovia r, Secao s where rs.codRodovia = r.codigo and rs.codSecao = s.codigo and PointInLine(s.geometria, @ point)
Operações espaciais Vector 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: Básica
Avanç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. Análise: Avançada & Especializada
centroide fora do polígono 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 Note: muitas aplicações ArcView calculam apenas um “psuedo” centroid: as coordenadas do MBR do polígono!
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 = 1.0 para círculo = 1.13 para quadrado area x 3.54 = número grande para polígono irregular Operações Espaciais: Medidas Espaciais
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 Operações Espaciais: buffer zones polygon buffer point buffers line buffer
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.) 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 Operações Espaciais:agregação espacial