160 likes | 245 Views
Algumas estruturas de dados em SIGs. Tabela Vectorial Matricial . Estrutura matricial (“raster”). Informação geográfica com este tipo de estrutura resulta de uma partição regular do espaço em células (ou pixels).
E N D
Algumas estruturas de dados em SIGs Tabela Vectorial Matricial
Estrutura matricial (“raster”) Informação geográfica com este tipo de estrutura resulta de uma partição regular do espaço em células (ou pixels). As células são geralmente quadradas: o tamanho é definido nesse caso através do comprimento do lado.
Exemplo Cada carta em formato matricial (ou imagem) tem um certo número de linhas e de colunas, e uma resolução. Para localizar a carta é suficiente indicar as coordenadas de algum dos vértices. 30 metros N Valor do pixel (100,200)
Exemplo: • Suponha que a localização das áreas edificáveis de uma parcela de um PDM está representada num tema A e que a localização corrente dos edifícios está representada por um tema B num sistema de informação geográfica. A informação representada diz apenas respeito à localização, não havendo outros atributos. • Supondo que as áreas edificáveis não são muito desagregadas, é mais eficiente, em termos do tamanho do ficheiro, que A seja um tema vectorial de polígonos ou um tema matricial com resolução espacial de 2 metros? • Suponha que se pretende determinar o valor aproximado da área ainda disponível para edificação (área edificável sem edifícios). É mais eficiente, em termos de tempo de processamento, determinar essa área se A e B forem temas vectoriais de polígonos ou se forem temas matriciais com resolução espacial de 2 metros? Justifique.
Operações espaciais sobre dados matriciais Sejam xij, yij, ..., os valores dos pixels da linha i e coluna j de temas x, y, ..., e seja z um novo tema com o mesmo número de linhas e colunas que x e y. • Funções locais: zij=f(xij) ou zij=f(xij,yij,...) • Funções focais ou zonais: dada uma vizinhança V de (i,j), seja Xij o conjunto de valores do tema x para a vizinhança V. Então, zij=f(Xij) ou zij=f(Xij,Yij,...) • Funções globais: o valor de zij pode depender da totalidade dos valores de x, y, ...., e das suas coordenadas.
Funções locais • Reclassificação: Dado o tema x e uma função f de uma variável, o novo tema z é definido por zij=f(xij). f é dada por uma tabela que associa a cada intervalo do domínio de valores de x um valor para z. [Mat01, Fig. 74] Se f apenas toma valores 0 e 1, o tema resultante é chamado booleano. Em geral, esses temas são usados para indicar as áreas onde se verifica ou não alguma condição.
Funções locais • Sobreposição matricial: dados dois temas matriciais x e y, o resultado da sobreposição é um tema matricial z tal que zij=f(xij,yij) para todo as linhas i e colunas j da imagem A função f pode ser +,-,*,max,min,operaçáo lógica, ..., de acordo com o domínio de valores dos temas Exemplo: Seja Aij=1 se o pixel (i,j)corresponde a zonas de regadio e Aij=0 caso contrário e Bij=1 para zonas de milho e Bij=0 caso contrário. Então a imagem obtida aplicando a função produto (*) a A e B terá valor 1 para os pixels correspondentes a milho de regadio e valor 0 para todos os outros pixels. Questão: que função f se pode usar se se pretender determinar as zonas de regadio ou de milho?
Funções focais ou zonais Dada uma imagem A, considere-se uma vizinhança de cada pixel (i,j). Consideram-se em geral vizinhanças 3*3, 5*5, ..., mas podem igualmente ser consideradas vizinhanças com formas não “quadradas”. No caso de vizinhanças 3*3, podem ser considerados todos os vizinhos ou apenas aqueles que partilham a fronteira do pixel. 4 vizinhos 8 vizinhos Pode distinguir-se o caso em que a vizinhança é a mesma para qualquer pixel (operações focais) ou o caso em que a vizinhança pode ter uma forma diferente para os pixels da imagem (operações zonais).
Funções focais Um filtro é uma função dos valores dos pixels da vizinhança. Para uma imagem A, e para cada pixel (i,j), o filtro devolve um valor f(Aij, Ai+1,j, Ai-1,j, Ai,j+1, Ai,j-1,...). Exemplos de filtros: • Segmentação de imagens • Determinação de declives e exposições • Determinação de linhas de água (direcções de escoamento ) e de cumeada
Exemplo: declive Um filtro para determinação do declive da superficie: Declive ao longo da linha: dl=(Ai+1,j - Ai-1,j )/(2h) Declive ao longo da coluna: dc= (Ai,j+1- Ai,j-1)/(2h) Em que d é o comprimento do lado do pixel. Dij= 180*arctg(sqrt(dl2+dc2)) é o valor estimado (em graus) para cada pixel (i,j).
Exemplo: orientação de encostas A orientação de uma parcela de terreno é a direcção de máxima taxa de variação de altitude. Pode ser estimada de uma forma simples pelo seguinte filtro. • Estimar declives segundo as 8 direcções: N, NE, E, SE, S, SW, W, NW Por exemplo, dN=(Ai,j -Ai,j+1 )/h; dNE=(Ai,j -Ai,j+1)/(sqrt(2) h),... • Escolher a direcção correspondente ao maior declive (ou “plano” se os declives são todos iguais) Neste caso o filtro é do tipo f=maxdirecção(dN, dNE, ...).
Exemplo: determinação de bacias hidrográficas • Determinação da direcção de escoamento de água: supõe-se que a água escoa na direcção de maior declive. [ESRI: ArcToobox, função flow direction]
2.Dado um pixel de coordenadas (i,j), identificar todas os pixels que drenam para esse pixel (através da direcção de escoamento). 3. Repetir o mesmo procedimento para todos os pixels identificados anteriormente. 4. O conjunto de pixels identificados forma a bacia do pixel (i,j). Problemas: 1) a discretização do espaço pode conduzir à criação de zonas artificialmente “planas”, limita a modelação da geometria da superfície; 2) não há escoamento sobre zonas “planas”. Nota: é possível atenuar a ocorrência de zonas artificialmente planas, considerando nesses casos filtros de maior dimensão.
Funções globais Exemplos: • Distância a um certo elemento da imagem • Distância euclideana • Distância com custos (distância ponderada pela “rugosidade” da superfície). • Criação de “buffers” sobre um tema matricial booleano • Determinação da zona visível a partir de um pixel (usando um modelo digital do terreno) • ...
“Objecto” 1 Nota: só direcções NS e EO são permitidas Rugosidade Tema “alvo” Distância mínima ao “alvo” mais próximo [ESRI: ArcToolbox, função Cost Distance] “Objecto” 2 Exemplo: cálculo de distância com custos Este tipo de problema surge, por exemplo, quando se quer determinar o custo mínimo de construção de um caminho, que depende da distância e também do custo de construção em cada zona do terreno.