UNIVERSIDADE TIRADENTES
RAFAEL OLIVEIRA VASCONCELOS
Elaboração de uma Solução para Automatização do
Georreferenciamento de Objetos a Partir do Reconhecimento
de Imagens
Aracaju
2010
RAFAEL OLIVEIRA VASCONCELOS
Elaboração de uma Solução para Automatização do
Georreferenciamento de Objetos a Partir do Reconhecimento
de Imagens
Monografia apresentada à Universidade
Tiradentes como um dos pré-requisitos à
obtenção do título de Bacharel em
Ciência da Computação.
ORIENTADOR: FÁBIO SOARES SILVA
CO-ORIENTADOR: FERNANDO HENRIQUE BEZERRA CARDOSO
Aracaju
2010
RAFAEL OLIVEIRA VASCONCELOS
Elaboração de uma Solução para Automatização do Georreferenciamento de
Objetos a Partir do Reconhecimento de Imagens
Monografia apresentada ao Curso de
Ciência da Computação da Universidade
Tiradentes como um dos pré-requisitos à
obtenção do título de Bacharel em
Ciência da Computação.
Aprovada em 12/06/2010.
Banca Examinadora
____________________________________________
Fábio Soares Silva
Universidade Tiradentes
___________________________________________
Fernando Henrique Bezerra Cardoso
Universidade Tiradentes
___________________________________________
Robert Anderson Nogueira de Oliveira
Universidade Tiradentes
RESUMO
As aplicações que tratam de georreferenciamento estão ganhando cada vez mais espaço e
importância. Por outro lado, o processo atual para georreferenciamento de objetos é
usualmente executado de forma manual, haja vista a escassez de ferramentas disponíveis. Este
processo é bastante oneroso, demorado e relativamente mecânico quando executado por
pessoas. Assim, é relevante a adoção de um processo capaz de acrescer o grau de
automatização no processo de georreferenciamento de objetos e que possibilite maior
velocidade e segurança, bem como redução nos custos associados à entrada de tais dados nos
Sistemas de Informação Geográfica (SIGs). Para realizar o trabalho proposto de
automatização no processo de georreferenciamento, foram utilizadas técnicas de computação
visual, inteligência artificial e geoprocessamento, mais especificamente nas áreas de
segmentação de imagens, redes neurais artificiais e sistemas de coordenadas, permitindo
processar e georreferenciar imagens de tomada aérea. O trabalho elaborou uma solução para o
problema do georreferenciamento de ruas e avenidas, automatizando esta tarefa que é
usualmente executada por agentes dotados de aparelhos GPS (Global Positioning System).
Uma avaliação experimental envolvendo o georreferenciamento de ruas e avenidas foi
realizada, e a aplicação desenvolvida com a implementação do método proposto apresentou
bons resultados em todas as fases do método.
PALAVRAS-CHAVE: Geoprocessamento; Georreferenciamento; Segmentação de imagem
ABSTRACT
The applications that address geocoding are gaining more and more space and importance.
Moreover, the current process for georeferencing of objects is usually performed manually,
given the scarcity of available tools. This process is very costly, time consuming and
relatively mechanical when performed by people. Therefore, it is important to adopt a process
that will accrue to the degree of automation in the process of georeferencing of objects and
that allows greater speed and security as well as reduction in costs associated with the entry of
such data in Geographic Information Systems (GIS). To perform the proposed work of
automation in the process of georeferencing techniques were used for visual computing,
artificial intelligence and geoprocess, specifically in the areas of image segmentation,
artificial neural networks and coordinate systems, allowing process and georeference aerial
images taken. The work has developed a solution to the problem of georeferencing of streets
and avenues, automating this task is usually performed by agents with GPS (Global
Positioning System) devices. An experimental evaluation involving the geocoding of streets
and avenues was performed, and the application developed with the implementation of the
proposed method showed good results in all phases of this method.
KEYWORDS: Geoprocess; Georeferencing; Image segmentation
LISTA DE QUADROS
Quadro 1. Pixel codificado no espaço de cores RGB com 24 bits de profundidade .............. 37
Quadro 2. Quantidade de cores representadas por profundidade .......................................... 38
Quadro 3. Efeito da redução da profundidade de cores no tamanho do arquivo ................... 41
Quadro 4. Influência da profundidade de cor na detecção de pele humana em fotografias ... 42
Quadro 5. Influência da textura na detecção de materiais .................................................... 43
Quadro 6. Comparação entre computação tradicional e neural ............................................ 47
Quadro 7. Determinação do melhor espaço de cores para segmentação de asfalto ............... 77
Quadro 8. Determinação do melhor tamanho de janela para segmentação de asfalto (HSL, 8
bits por canal) ...................................................................................................................... 78
Quadro 9. Resultados do segmentador baseado no crescimento de regiões na detecção de
asfalto .................................................................................................................................. 79
Quadro 10. Resultado da geração dos polígonos ................................................................. 82
Quadro 11. Erro estimado no georreferenciamento das ruas e avenidas ............................... 86
Quadro 12. Resumo dos resultados na imagem ................................................................... 88
Índice de figuras
Figura 1. Parâmetros do Datum ........................................................................................... 17
Figura 2. Sistema de coordenadas geográficas ..................................................................... 18
Figura 3. Sistema de coordenadas planas ............................................................................. 19
Figura 4. Projeção plana ...................................................................................................... 21
Figura 5. Projeção cônica equivalente de Albers ................................................................. 21
Figura 6. Exemplo de representação vetorial em duas dimensões ........................................ 23
Figura 7. Mapa representado com resoluções diferentes ...................................................... 24
Figura 8. Processamento de consultas espaciais ................................................................... 27
Figura 9. Exemplo de SIG com informações plotadas no mapa ........................................... 29
Figura 10. Exemplos de relacionamentos espaciais.............................................................. 30
Figura 11. Exemplo de imagem segmentada........................................................................ 33
Figura 12. Decomposição de imagem no modelo de cor CMYK ......................................... 35
Figura 13. Espaço de cores HSV visualizado como um cone ............................................... 36
Figura 14. Espaço de cores RGB visualizado como um cubo............................................... 36
Figura 15. Imagem com 24 bits de profundidade ................................................................. 38
Figura 16. Imagem com 16 bits de profundidade ................................................................. 39
Figura 17. Imagem com 8 bits de profundidade ................................................................... 39
Figura 18. Imagem com 4 bits de profundidade ................................................................... 40
Figura 19. Imagem com 1 bit de profundidade .................................................................... 41
Figura 20. Comparação visual entre diferentes texturas ....................................................... 43
Figura 21. Representação de um neurônio biológico ........................................................... 48
Figura 22. Representação de uma sinapse ............................................................................ 49
Figura 23. Neurônio artificial .............................................................................................. 50
Figura 24. Rede neural artificial do tipo MLP ..................................................................... 51
Figura 25. Paradigma de aprendizado supervisionado ......................................................... 52
Figura 26. Visão geral do método proposto ......................................................................... 57
Figura 27. Visão geral do segmentador neural baseado em informação de textura e cor ....... 59
Figura 28. Segmentador baseado na informação de cor executada para detecção de asfalto . 60
Figura 29. Diferentes tipos de materiais .............................................................................. 61
Figura 30. Polígono gerado com configuração 19-1............................................................. 62
Figura 31. Polígono 19-1 com área destacada ...................................................................... 63
Figura 32. Polígono com configuração 15-7 ........................................................................ 64
Figura 33. Polígono com configuração 1-0 .......................................................................... 65
Figura 34. Polígono gerado a partir de imagem obtida do segmentador neural ..................... 66
Figura 35. Resultado da segmentação baseada no crescimento de regiões............................ 68
Figura 36. Segmentação realizada com semente (265, 755) e limiar 10 ............................... 68
Figura 37. Polígono gerado com orientação horizontal ........................................................ 70
Figura 38. Polígono gerado com orientação vertical ............................................................ 71
Figura 39. Exemplo de imagem do conjunto de treinamento para detecção de asfalto, com sua
respectiva segmentação manual ............................................................................................ 76
Figura 40. Melhor caso obtido da aplicação do segmentador neural para detecção de asfalto
(asfalto em branco e demais regiões em preto) ..................................................................... 78
Figura 41. Pior caso obtido da aplicação do segmentador neural para detecção de asfalto
(asfalto em branco e demais regiões em preto) ..................................................................... 79
Figura 42. Melhor caso do segmentador baseado no crescimento de regiões na detecção de
asfalto com limiar 40 (asfalto em vermelho) ......................................................................... 80
Figura 43. Pior caso do segmentador baseado no crescimento de regiões na detecção de
asfalto com limiar 30 (asfalto em vermelho) ......................................................................... 80
Figura 44. Melhor caso da geração do polígono (área de interesse em vermelho) ................ 83
Figura 45. Pior caso da geração do polígono (área de interesse em vermelho) ..................... 84
Figura 46. Falhas em destaque da segmentação da imagem e geração do polígono .............. 85
Figura 47. Resultado do georreferenciamento de uma avenida ............................................ 87
SUMÁRIO
1 INTRODUÇÃO ............................................................................................................... 11
1.1 Descrição do Problema ............................................................................................... 11
1.2 Motivação .................................................................................................................. 12
1.3 Objetivos .................................................................................................................... 13
1.4 Organização do Trabalho ............................................................................................ 14
2 GEOPROCESSAMENTO .............................................................................................. 15
2.1 Cartografia ................................................................................................................. 16
2.1.1 Sistemas de coordenadas...................................................................................... 18
2.1.2 Projeções cartográficas ........................................................................................ 20
2.2 Sistema de Informação Geográfica ............................................................................. 22
2.2.1 Representação computacional de dados geográficos............................................. 23
2.2.2 Entrada de dados ................................................................................................. 25
2.2.3 Gerenciamento e recuperação de informação ....................................................... 26
2.2.4 Manipulação e análise de dados ........................................................................... 28
2.2.5 Produção cartográfica e exibição de resultados .................................................... 29
2.3 Georreferenciamento .................................................................................................. 29
2.3.1 Métodos de georreferenciamento ......................................................................... 31
2.4 Considerações Finais .................................................................................................. 32
3 SEGMENTAÇÃO DE IMAGEM.................................................................................. 32
3.1 Espaço de Cores ......................................................................................................... 34
3.2 Profundidade de Cor ................................................................................................... 37
3.3 Textura ....................................................................................................................... 42
3.4 Inteligência Artificial ................................................................................................. 44
3.4.2 Redes neurais artificiais ....................................................................................... 46
3.5 Técnicas de Segmentação de Imagem ......................................................................... 53
3.6 Considerações Finais .................................................................................................. 56
4 MÉTODO PROPOSTO .................................................................................................. 56
4.1 Visão Geral ................................................................................................................ 57
4.2 Segmentador Neural Baseado em Informação de Textura e Cor .................................. 58
4.2.1 Geração de polígonos a partir de imagens segmentadas ....................................... 61
4.3 Segmentador Baseado no Crescimento de Regiões ..................................................... 67
4.3.1 Geração de polígonos a partir de imagens segmentadas ....................................... 69
4.4 Georreferenciamento de Ruas e Avenidas ................................................................... 72
4.5 Detalhes da Implementação do Protótipo .................................................................... 73
4.6 Considerações Finais .................................................................................................. 74
5 AVALIAÇÃO EXPERIMENTAL ................................................................................. 75
5.1 Detecção de Ruas e Avenidas em Ortofotos ................................................................ 75
5.1.1 Segmentador neural ............................................................................................. 76
5.1.2 Segmentador baseado no crescimento de regiões ................................................. 79
5.1.3 Resultados obtidos ............................................................................................... 81
5.2 Resultado Obtido da Geração de Polígonos ................................................................ 82
5.2.1 Resultado a partir do segmentador baseado no crescimento de regiões ................. 82
5.3 Resultado do Georreferenciamento de Ruas e Avenidas ............................................. 85
5.4 Considerações Finais .................................................................................................. 88
6 CONCLUSÃO ................................................................................................................. 89
REFERÊNCIAS ................................................................................................................. 92
11
1 INTRODUÇÃO
A tecnologia do geoprocessamento tem grande potencial para auxiliar na
solução de problemas causados pela insuficiência de informações. Entretanto, seu uso
efetivo ainda está longe de ser concretizado, principalmente porque o levantamento e
análise eficientes das informações dependem da quantidade e qualidade dos dados
georreferenciados disponíveis.
Neste contexto, as aplicações que tratam de georreferenciamento estão
ganhando cada vez mais espaço e importância. Por outro lado, o processo atual para
georreferenciamento de objetos é usualmente executado de forma manual, haja vista a
escassez de ferramentas disponíveis.
Pelo exposto, é relevante a adoção de um processo capaz de acrescer o grau
de automatização no processo de georreferenciamento de objetos, facilitando assim a
construção de novas aplicações na área de geoprocessamento.
1.1 Descrição do Problema
Os métodos atuais de georreferenciamento ainda apresentam baixo nível de
automatização, sendo necessário usar agentes para realizar a localização geoespacial dos
objetos. Normalmente, este processo envolve as seguintes etapas:
1. Aquisição de aparelhos GPS (Global Positioning System);
2. Contratação de funcionários;
12
3. Transportar os funcionários para as áreas onde os objetos serão
georreferenciados;
4. Com uso dos aparelhos GPS, os funcionários fazem a localização
geográfica dos objetos;
5. Os funcionários são transportados de volta à empresa;
6. Os dados coletados são transferidos para o SIG (Sistema de Informação
Geográfica).
É notório que o método atual de georreferenciamento é executado com
pouco, ou nenhum nível de automação. Apenas as etapas 4 e 6 podem possuir algum
tipo de automatização.
Deste modo, o georreferenciamento se torna um empecilho para a
construção de Sistemas de Informação Geográfica, pois este processo pode ser
consideravelmente custoso a depender da região e quantidade de objetos a serem
georreferenciados.
1.2 Motivação
O georreferenciamento de objetos é uma tarefa essencial para a construção
de SIGs, haja vista que sem a presença de dados localizados geograficamente, não há
sentido a construção de SIGs. Outro fator é que por esta tarefa ser executada usualmente
de forma manual e não ser o objetivo final da maioria das aplicações que manipulam
dados geoespaciais, utiliza recursos humanos que podem ser melhor aplicados na
resolução do problema central, caso exista uma maior automatização do
georreferenciamento.
13
Apesar da extensa revisão bibliográfica realizada, não foi encontrado
nenhum trabalho com o mesmo fim, que é de propor um método para o
georreferenciamento de objetos a partir do reconhecimento de imagens.
Deste modo, a principal motivação para a realização desta monografia foi
facilitar o georreferenciamento de objetos em SIGs, para assim permitir aplicar esta
nova tecnologia em cenários que, da forma tradicional, teriam uma relação
custo/benefício proibitiva.
Além disto, Cardoso (2009) explica que há um aumento na probabilidade de
sucesso, haja vista que os recursos são utilizados de maneira mais produtiva, atacando o
problema central.
1.3 Objetivos
O objetivo geral desta monografia é elaborar uma solução – na forma de
software – para a automatização do georreferenciamento de ruas e avenidas em SIGs a
partir do reconhecimento de imagens e que tenha métricas de avaliação aceitáveis a
partir de um conjunto de imagens rotuladas manualmente.
Os objetivos específicos do trabalho são:
Investigar técnicas de computação visual para segmentação de imagens;
Investigar técnicas de inteligência artificial, mais especificamente, as
redes neurais em processos de segmentação de imagens;
Avaliar vantagens e desvantagens da segmentação com base em
computação visual e inteligência artificial;
14
Investigar métodos de georreferenciamento de objetos;
Elaborar um método para georreferenciamento de objetos baseado no
reconhecimento de padrões de imagens;
Desenvolver um componente de software capaz de implementar o
método sugerido;
Validar a eficácia do processo em situações reais.
1.4 Organização do Trabalho
Para uma melhor descrição do trabalho, este documento foi organizado em
mais 5 capítulos. O Capítulo 2 apresenta um panorama geral sobre geoprocessamento
com a finalidade de fundamentar os conceitos utilizados na resolução do problema
estudado. Em seguida, o Capítulo 3 aborda os temas relacionados a área de segmentação
de imagem, portanto, traz fundamentos a respeito do tema, bem como as técnicas
utilizadas na literatura para realizar detecção de materiais. No Capítulo 4, o método
proposto por este trabalho é descrito minuciosamente. O Capítulo 5 é dedicado a
descrição dos resultados obtidos na avaliação experimental realizada através de um
estudo de caso. Por fim, o Capítulo 6 relata as conclusões que foram obtidas no trabalho
e apresenta propostas de trabalhos futuros para agregar valor ao tema estudado.
15
2 GEOPROCESSAMENTO
A opinião de Câmara, et al. (2001) a cerca do geoprocessamento é que:
Em um país de dimensão continental como o Brasil, com uma grande
carência de informações adequadas para a tomada de decisões sobre os
problemas urbanos, rurais e ambientais, o geoprocessamento apresenta um
enorme potencial, principalmente se baseado em tecnologias de custo
relativamente baixo, em que o conhecimento seja adquirido localmente
(Câmara, et al., 2001).
De acordo com Andrade, et al. (2007), o progresso na área de Tecnologia da
Informação possibilita ao gestor, tomadas de decisão com um elevado grau de precisão,
ajudando-o a visualizar onde e de que forma ele pode atuar para sanar ou, pelo menos,
reduzir os problemas identificados. De outra maneira, o gestor teria que consultar
históricos municipais, relatórios, gráficos e banco de dados pouco eficientes. Dessa
forma, com a adição de dados específicos de representação territorial, tais como
informações relativas a setores censitários, imagens de satélite, fotos aéreas e base de
dados geográficos previamente produzidos por empresas especializadas, torna-se
possível classificar, de forma prática, problemas mais graves apresentados por um
município, tais como: a falta de infraestrutura básica, crescimento urbano desordenado e
zonas de risco para construção de edificações.
Portanto,
16
Se onde é importante para o seu negócio, então geoprocessamento é sua
ferramenta de trabalho. Sempre que onde aparece dentre as questões e
problemas que precisam ser resolvidos por um sistema informatizado, haverá
uma oportunidade para considerar a adoção de um Sistema de Informação
Geográfica (SIG) (Câmara, et al., 2001).
Em diversas áreas, tais como saúde, segurança e transporte, é de extrema
importância saber onde há maior incidência de determinada doença, onde o plano de
segurança pública não está produzindo os resultados esperados ou onde existe o maior
congestionamento na cidade. Tais perguntas revelam a necessidade e importância da
adoção de um Sistema de Informação Geográfica (SIG) como ferramenta de apoio à
tomada de decisão pelos gestores públicos.
2.1 Cartografia
Cartografia, que em grego significa escrita de mapa, é a ciência que estuda
os mapas. Ela está intimamente ligada ao geoprocessamento, pois a cartografia se
relaciona com um modelo de representação para os processos que ocorrem no espaço
geográfico. Já o geoprocessamento é a área que se utiliza de técnicas computacionais e
matemáticas para manipular os processos que ocorrem no espaço geográfico, explicam
Câmara, et al. (2001).
A localização geográfica de um objeto só pode ser determinada quando
existe algum outro ponto de referência, seja ele outro objeto conhecido ou um sistema
de coordenadas.
17
Um conceito importante quando se trata de localização geográfica é o datum
planimétrico. Resumidamente, o datum é “uma superfície de referência elipsoidal
posicionada com respeito a uma certa região. Sobre esta superfície realizam-se as
medições geodésicas que dão vida à rede geodésica planimétrica da região” (Câmara, et
al., 2001).
Em síntese, o datum planimétrico, Figura 1, é um modelo matemático
utilizado para representar a superfície terrestre. Ele é determinado por 2 parâmetros para
definir o elipsóide de referência e 3 para definir o vetor de translação entre o centro da
Terra real e o do elipsóide.
Figura 1. Parâmetros do Datum
Fonte: (Google, 2010)
Pelo exposto, não existe uma posição absoluta para localizar um objeto na
superfície terrestre, visto que a posição sempre será relativa ao datum – ponto de
referência – escolhido.
18
2.1.1 Sistemas de coordenadas
Na matemática, um sistema de coordenadas é um sistema utilizado para
representar um ponto no espaço. Utilizando esta descrição para a geografia, o sistema de
coordenadas é indispensável para expressar a posição geográfica de um ponto.
O sistema de coordenadas mais antigo e conhecido é o sistema de
coordenadas geográficas, Figura 2. Neste sistema, existem 2 linhas imaginárias que
dividem a Terra em 4 quadrantes. Estas linhas são o meridiano de Greenwich e paralelo
do Equador.
Figura 2. Sistema de coordenadas geográficas
Fonte: Adaptado de (Amarante, 2008)
Meridiano é uma linha imaginária vertical, de forma que o meridiano de
Greenwich divide a Terra em leste e oeste. Já o paralelo é a linha imaginária horizontal,
de tal maneira que o paralelo do Equador divide a Terra em norte e sul.
19
Tanto o meridiano de Greenwich quanto o paralelo do Equador são
considerados os marcos iniciais no sistema de coordenadas geográficas. Os meridianos
assumem valores entre 180º e -180º, respectivamente leste e oeste, e os paralelos entre
90º e -90º, respectivamente norte e sul.
Para localizar um objeto na superfície terrestre utilizando o sistema de
coordenadas geográficas, é necessário saber sua latitude e longitude. Latitude está
relacionada à distância angular entre o objeto e o meridiano de Greenwich e longitude
está relacionada à distância angular entre o objeto e o paralelo do Equador.
Outro sistema bastante utilizado é o sistema de coordenadas planas, também
conhecido como sistema de coordenadas cartesianas, cuja representação pode ser vista
na Figura 3. Neste sistema, são utilizados 2 números reais para expressar a posição do
ponto nos eixos X – horizontal – e Y – vertical.
Figura 3. Sistema de coordenadas planas
Fonte: (Geoprocessamento para Linux, 2010)
20
Existem outros sistemas de coordenadas não citados neste trabalho, cujo
estudo detalhado foge do escopo desta monografia e pode ser realizado em Câmara, et
al. (2001).
2.1.2 Projeções cartográficas
As projeções cartográficas surgiram devido ao problema da deformação
gerada ao tentar representar a superfície terrestre em um plano. A projeção cartográfica
está relacionada com a forma que o mapa será exibido.
A produção de um mapa é uma tarefa que:
[...] requer um método que estabeleça uma relação entre os pontos da
superfície da Terra e seus correspondentes no plano de projeção do mapa.
Para obter essa correspondência, utilizam-se os sistemas de projeções
cartográficas (Câmara, et al., 2001).
As projeções podem ser classificadas de acordo com suas propriedades de
deformação em conforme, equivalente ou equidistante. Projeções conformes mantêm os
ângulos e as formas de pequenos objetos, porém deforma as áreas dos demais objetos.
Projeções equivalentes mantêm as áreas, porém alteram os ângulos. Já as projeções
equidistantes alteram os ângulos e as áreas.
A classificação relacionada ao tipo de superfície empregada pode ser
dividida em planas ou azimutais, cilíndricas, cônicas e poliédricas.
21
Figura 4. Projeção plana
Fonte: (Curso Objetivo, [s.d])
Figura 5. Projeção cônica equivalente de Albers
Fonte: (Google, 2010)
Para uma melhor compreensão dos conceitos, as Figuras 4 e 5 ilustram,
respectivamente, exemplos de projeções plana e cônica.
22
2.2 Sistema de Informação Geográfica
Segundo Câmara, et al. (2001), “o problema fundamental da Ciência da
Geoinformação é o estudo e a implementação de diferentes formas de representação
computacional do espaço geográfico”.
Sistema de Informação Geográfica (SIG), ou Geographic Information
Systems (GIS), é um sistema que manipula dados geográficos, isto é, realiza o
tratamento computacional de dados geoespaciais e recupera informações não apenas
com base em suas características alfanuméricas, mas também através de sua localização
espacial. Barbosa (1997) descreve um SIG como uma ferramenta automática e
computadorizada para manipulação de informações geográficas.
As principais características de um SIG são:
Armazenar e integrar informações espaciais provenientes de dados
censitários, de GPS, de imagens de satélite, de cadastros urbanos e
rurais;
Disponibilizar recursos para análise e combinação das informações
armazenadas, além de permitir a consulta, recuperação e visualização
do conteúdo da base de dados geográfica.
Portanto, a diferença mais marcante entre um SIG e um sistema de
informação convencional “é sua capacidade de armazenar tanto os atributos descritivos
como as geometrias dos diferentes tipos de dados geográficos” (Câmara, et al., 2001).
Como qualquer outro sistema, cada SIG possui suas funcionalidades
particulares, pois cada um foi construído para solucionar problemas específicos, tendo
assim maior robustez para tratar alguns problemas. Porém, é possível citar e agrupar
23
algumas funcionalidades que estão presentes na maioria dos SIGs, as quais podem ser
divididas em:
Entrada de dados;
Gerenciamento e recuperação de informação;
Manipulação e análise de dados;
Produção cartográfica e exibição de resultados.
2.2.1 Representação computacional de dados geográficos
Os dados geoespaciais podem ser representados por 2 estruturas de dados:
vetorial ou matricial.
As estruturas vetoriais, Figura 6, armazenam as fronteiras das entidades
geográficas, utilizando pontos, linhas e polígonos.
Figura 6. Exemplo de representação vetorial em duas dimensões
Fonte: (Câmara, 2005)
Um ponto é um par ordenado (x, y) que além das coordenadas, podem
armazenar atributos descritivos não espaciais. Uma linha é um conjunto de pontos
conectados, e de modo análogo ao ponto, pode armazenar atributos. Um polígono é a
região ou área fechada do plano limitada por mais de 2 linhas conectadas umas as
24
outras, de tal forma que o último ponto da última linha seja igual ao primeiro ponto da
primeira linha.
Para Câmara, et al. (2001), na representação matricial o espaço é
representado como uma matriz P(m, n) composto de m colunas e n linhas, onde cada
célula possui um número de linha, um número de coluna e um valor correspondente ao
atributo estudado, sendo que cada célula é individualmente acessada pelas suas
coordenadas. Para utilizar esta representação, o espaço deve ser tratado como uma
superfície plana.
Figura 7. Mapa representado com resoluções diferentes
Fonte: (Câmara, et al., 2001)
A Figura 7 mostra como um mesmo mapa pode ser representado utilizando
diferentes resoluções. A resolução do mapa do lado esquerdo é 4 vezes menor e assim, o
espaço necessário para armazenar esta matriz é também 4 vezes menor. Entretanto, a
precisão dos dados coletados será 4 vezes maior no mapa do lado direito.
25
A estrutura matricial pode representar uma grade regular ou matriz temática. Na
grade regular, cada elemento está associado a um valor numérico. Já na matriz temática,
cada elemento é um código que representa um fenômeno, como 1 = caatinga e 2 = mata
atlântica.
O espaço celular é uma estrutura que pode armazenar diversos atributos. Com a
possibilidade de utilizar uma única matriz para representar vários atributos, é possível
economizar espaço de armazenamento e facilitar o manuseio dos dados.
2.2.2 Entrada de dados
De nada adianta ter um sistema se não é possível inserir novos dados. O que
difere um SIG de sistemas convencionais é que aquele pode manipular dados como
imagens, vetores, dados geográficos e também dados comuns aos sistemas tradicionais.
A entrada de dados, por demandar muito tempo e ser bastante sensível a
erros, deve ser o mais automatizado possível. Mesmo existindo algoritmos para
solucionar tais erros, esta solução é lenta e falível.
Imagine um SIG que deve mapear todos os rios de uma determinada região.
Caso este trabalho seja feito de formal manual, haverá uma grande probabilidade de
existirem erros na hora da inserção dos dados, além do custo para manter uma equipe
realizando a tarefa de geolocalizar o curso dos rios. Com um procedimento
automatizado, seria muito mais rápido, barato e seguro realizar o mapeamento.
As funcionalidades de entrada de dados comumente encontradas nos SIGs
são:
26
Admitir a entrada de dados por meio de teclado e/ou mouse, permitindo
ao usuário inserir informações alfanuméricas (descritivas), coordenadas
geográficas e pontos no formato vetorial, possibilitando a criação de
polígonos e retas no mapa;
Analisar a consistência dos polígonos para evitar erros, tais como o não
fechamento da área ou sobreposição de polígonos;
Realizar procedimentos de correção sobre os dados inseridos,
verificando vértices desnecessários.
2.2.3 Gerenciamento e recuperação de informação
Qualquer sistema que utiliza um SGBD (Sistema Gerenciador de Banco de
Dados) precisa realizar o gerenciamento da base de dados, não sendo diferente nos
Sistema de Informação Geográfica.
Além das tradicionais tarefas associadas aos SGBDs, tais como controlar o
acesso concorrente, manter a consistência da base de dados, proteger o acesso não
autorizado e garantir a recuperação e tolerância a falhas, um SGBD para uso em SIGs
deve ser capaz de garantir a integridade entre os dados alfanuméricos tradicionais e os
dados geográficos.
Uma questão importante no acesso da informação é garantir a recuperação
de modo eficiente, através de recursos de indexação dos dados o que, em se tratando de
SIG, precisa realizar também a indexação espacial por meio de técnicas como B-Tree,
R-Tree, Quad-Tree, GiST e HASH, por exemplo.
27
Figura 8. Processamento de consultas espaciais
Fonte: (Jr., et al., 2005) adaptado de (Gaede, et al., 1997)
A Figura 8 elucida como é realizado o processamento de consultas
espaciais. O índice espacial, tal como o índice tradicional, possui representações
simplificadas dos objetos, o que reduz drasticamente o tamanho do índice e, por
consequência, aumenta o desempenho da consulta. Comumente, o processamento da
consulta é dividido em filtragem e refinamento. Na filtragem, é utilizado o índice
espacial com intuito de restringir rapidamente os possíveis candidatos. Estes passam por
testes geométricos através de algoritmos computacionalmente complexos e custosos,
que são aplicados a geometria dos candidatos selecionados.
Apesar do nível de desenvolvimento tecnológico dos SGBDs atuais, muitos
SIGs ainda utilizam arquivos no formato texto como fonte de dados, o que acarreta uma
série de problemas e aumenta a complexidade de desenvolvimento do SIG, pois muitos
dos recursos disponibilizados pelos SGBDs serão implementados no próprio SIG.
28
O SIG deve fornecer uma interface para permitir, de maneira fácil, intuitiva
e rápida, que o usuário possa recuperar todos os dados de que precisa.
2.2.4 Manipulação e análise de dados
A forma de analisar e manipular os dados varia de um SIG para outro, seja
pela diferença na implementação ou diferença do tipo de dado que é trabalhado. Como
supracitado, cada SIG é concebido para resolver um problema específico e, por isso,
tem um modo único de manipular e analisar os dados, sendo esta uma característica
essencial.
Com o uso cada vez maior de imagens de alta resolução obtidas por
satélites, os SIGs da área de processamento digital de imagens precisam equalizar a
imagem pela análise do histograma, realizar segmentação de imagem, transformação
entre espaços de cores, entre outras técnicas que podem ser empregas em imagens
digitais. SIGs que se encaixam nesta categoria são aqueles responsáveis por analisarem
fotos em busca de ocorrências ou padrões que denotem uma característica ou evento
específico, tais como focos de incêndio e desmatamento ilegal.
A análise dos dados para extração de informação pode ser realizada no
momento da entrada dos dados, em rotinas de background ou no momento da realização
de uma consulta. Cabe a cada desenvolvedor analisar qual a melhor estratégia para o
SIG que será concebido.
29
2.2.5 Produção cartográfica e exibição de resultados
Após a fase da análise de dados, o SIG deve retornar algum resultado ao
usuário, que vai da finalidade do SIG e da necessidade do usuário.
Alguns SIGs são capazes de gerar mapas com legenda, imprimir através de
dispositivos diversos para a confecção de mapas com alta qualidade, gerar relatórios,
plotar mapas, entre outros. A grande maioria dos SIGs encontrados exibem seus
resultados em mapas plotados na tela do usuário, como mostrado na Figura 9.
Figura 9. Exemplo de SIG com informações plotadas no mapa
2.3 Georreferenciamento
O georreferenciamento, imprescindível para a construção de SIGs, é a
técnica que localiza um objeto na superfície terrestre e o representa em uma projeção
30
cartográfica. Barbosa (1997) explica que o georreferenciamento descreve um objeto do
mundo real em termos de sua posição em relação a um sistema de coordenadas
conhecidas (localização geográfica) e de suas relações espaciais com outros objetos
como pertinência, vizinhança e distância (relacionamentos espaciais).
Figura 10. Exemplos de relacionamentos espaciais
Fonte: Adaptado de (Oliveira, 2009)
31
A Figura 10 ilustra exemplos de pertinência, vizinhança e distância. Em (a)
é exposto a relação “B pertence à A”, em (b) “A é vizinho à B” e em (c) “A está a uma
distância D de B”.
2.3.1 Métodos de georreferenciamento
As aplicações que tratam de georreferenciamento estão ganhando cada vez
mais espaço e importância. Por outro lado, o processo atual para georreferenciamento de
objetos (ruas, rios, florestas, etc) é usualmente executado de forma manual, haja vista a
escassez de ferramentas disponíveis. Este processo é bastante oneroso, demorado e
relativamente mecânico quando executado por pessoas.
Métodos atuais, como os propostos por Vieira, et al. (2008) e Folador, et al.
(2008), ainda apresentam baixo nível de automação no processo de georreferenciamento
dos objetos, sendo necessário usar um agente em campo dotado de um aparelho GPS
(Global Positioning System) para coletar a posição geográfica dos vértices do polígono,
delimitando assim a área do objeto a ser georreferenciado.
Por serem os métodos atuais bastante onerosos, demorados e com baixo
grau de automatização, a proposta deste trabalho é criar um método capaz de acrescer o
grau de automatização no processo de georreferenciamento de objetos e que possibilite
maior velocidade e segurança, bem como redução nos custos associados à entrada de
tais dados nos SIGs.
Apesar da extensa revisão bibliográfica realizada, não foi encontrado
nenhum trabalho com a finalidade de automatizar o processo, permitindo um método
32
para o georreferenciamento de objetos a partir do reconhecimento de padrões na
imagens.
2.4 Considerações Finais
Embora o tema deste trabalho seja pouco explorado na literatura acadêmica,
a revisão bibliográfica pôde prover informações bastante importantes acerca de tópicos
relevantes para a obtenção de um método automatizado para o georreferenciamento de
objetos a partir de imagens.
No que tange o georreferenciamento, foi possível determinar que os
métodos atuais possuem baixo grau de automatização e utilizam agentes que fazem o
processo do georreferenciamento, o que torna relevante propor um método baseado no
reconhecimento de imagens.
3 SEGMENTAÇÃO DE IMAGEM
Sobre segmentação de imagem, Saldanha, et al. (2009) explicam que:
Um dos grandes desafios na área de processamento de imagens digitais é a
extração rápida de informações a partir das imagens para a realização de
análise. Uma questão fundamental na extração é a simplificação da imagem,
reduzindo as informações a regiões homogêneas, permitindo uma
representação mais adequada. Essa tarefa consiste o problema da
segmentação (Saldanha, et al., 2009).
33
Na área de processamento digital de imagens de sensoriamento remoto, a
segmentação pode ser definida, segundo Moik (1980), como uma análise que trata da
definição de objetos geográficos ou regiões em imagens.
Na análise de imagens, a primeira etapa geralmente é a segmentação da
imagem, que tem como função extrair informação da imagem digital. A segmentação
divide a imagem em partes ou objetos, reduzindo assim a quantidade de informação na
imagem, como ilustrado na Figura 11.
Figura 11. Exemplo de imagem segmentada
Fonte: (Cardoso, 2009)
A segmentação realizada na Figura 11 desejava separar o céu azul dos
demais materiais presentes na imagem. Neste contexto, a região de cor preta significa
que no processo de segmentação, o material foi identificado como não sendo céu azul.
Em contrapartida, a região marcada com a cor branca significa que o material foi
identificado como céu azul.
34
A redução da quantidade de informação na imagem é um ponto chave para a
extração de informação. Reduzir a quantidade de informação na imagem em regiões
aproximadamente homogêneas permite uma análise mais eficaz. Por tal motivo, o
sucesso da extração das informações está intrinsecamente ligado à qualidade do
tratamento realizado, sendo a segmentação uma das etapas.
Os autores Gonzalez, et al. (2000) e Saldanha, et al. (2009) comentam que o
desenvolvimento de algoritmos com a finalidade de automatizar o processo de
segmentação de imagem é um das tarefas mais complexas na área de processamento de
imagens. Yong, et al. (2004) esclarecem que para alcançar um resultado aceitável, o
algoritmo deve ser dotado de heurísticas que abranjam tanto informação semântica,
como conhecimento a priori sobre as imagens que estão sendo processadas.
3.1 Espaço de Cores
O espaço de cores é “uma especificação de um sistema de coordenadas
tridimensionais e um subespaço dentro deste sistema onde cada cor é representada por
um único ponto” (Gonzalez, et al., 2000). Nem todo espaço de cores é tridimensional,
como é o caso do CMYK – Cyan, Magenta, Yellow and Key Black –, Figura 12, que é
formado por Ciano, Magenta, Amarelo e Preto.
35
Figura 12. Decomposição de imagem no modelo de cor CMYK
Fonte: (Wikipedia, 2009)
Um modelo – ou espaço – de cor foi criado com a finalidade de padronizar e
facilitar a especificação das cores, deste modo, a notação 0, 0, 0 em RGB – Red
(Vermelho), Green (Verde), Blue (Azul) – é entendida como a cor preta.
Sabe-se que as cores podem ser modeladas em canais, e especificamente no
espaço de cores HSV, estes canais são matiz, saturação e valor, como ilustrado na
Figura 13.
Existem diversos modelos de cores, alguns deles são:
RGB – Red, Green, Blue (Vermelho, Verde, Azul);
Grayscale (Escala de cinza);
HLS – Hue, Lightness, Saturation (Matiz, Luminosidade, Saturação);
HSV – Hue, Saturation, Value (Matiz, Saturação, Valor);
YCbCr – Luminance, Chrominance Blue, Chrominance Red
(Luminância, Crominância de azul, Crominância de Vermelho).
36
Figura 13. Espaço de cores HSV visualizado como um cone
Fonte: (Microsoft, [s.d])
O espaço de cores mais utilizado é o RGB, amplamente utilizado em
monitores com tubos de raios catódicos – televisões e monitores tradicionais – e foi
baseado na visão humana, que possui cones sensíveis as luzes vermelha, azul e verde. O
modelo RGB pode ser visualizado como um cubo com as 3 cores primárias que
misturadas dão origem a uma diversidade de cores, como ilustrado na Figura 14.
Figura 14. Espaço de cores RGB visualizado como um cubo
Fonte: (Microsoft, [s.d])
37
Cada espaço de cores tem vantagens e desvantagens para cada situação, o
que pode influenciar na segmentação da imagem. A depender das características da
imagem, é de grande valia realizar uma transformação no espaço de cores para assim,
garantir um melhor resultado na segmentação.
3.2 Profundidade de Cor
Além do espaço de cores, outro conceito importante para a segmentação de
imagens é a profundidade de cor. Cada canal, independente do espaço de cores
utilizado, pode ser codificado utilizando uma quantidade N de bits.
Tendo como exemplo uma imagem de 24 bits no espaço de cores RGB,
cada pixel será composto pelos canais vermelho, verde e azul. Um pixel qualquer
poderia ser representado da seguinte maneira:
R G B
10010111 11110101 01001010
Quadro 1. Pixel codificado no espaço de cores RGB com 24 bits de profundidade
O modelo de cor RGB, Quadro 1, normalmente utiliza 24 bits para
codificação das cores, 8 bits para cada canal. É notório que uma quantidade maior de
bits poderá representar mais cores – e assim mais informações existirão na –, como
mostrado no Quadro 2. Cardoso (2009) explica que a redução da profundidade de cor
tende a homogeneizar as cores, visto que cores semelhantes em 8 bits serão
38
consideradas cores iguais em codificações de menor profundidade. Este efeito pode ser
visto nas Figuras 15, 16, 17, 18 e 19.
Profundidade de cor Número de cores representadas
1 2
2 4
4 16
8 256
16 65.536
24 16.777.216
Quadro 2. Quantidade de cores representadas por profundidade
A Figura 15 é a imagem original obtida da câmera digital com profundidade
de 24 bits.
Figura 15. Imagem com 24 bits de profundidade
39
Figura 16. Imagem com 16 bits de profundidade
As imagens das Figuras 15 e 16 são bastante semelhantes para o olho
humano. A codificação de 24 para 16 bits não resulta em uma perda considerável de
qualidade.
Figura 17. Imagem com 8 bits de profundidade
40
Entre as Figuras 16 e 17 (16 e 8 bits, respectivamente) já existe uma
homogeneização relevante nas cores.
Figura 18. Imagem com 4 bits de profundidade
Com apenas 4 bits na imagem, Figura 18, fica difícil representar as cores,
haja vista a pequena quantidade de cores possíveis de se representar.
Por fim, a Figura 19 mostra a imagem com apenas 1 bit de profundidade,
sendo possível representar apenas as cores branca e preta.
41
Figura 19. Imagem com 1 bit de profundidade
O Quadro 3 mostra o tamanho das imagens das Figuras 15 a 19 e a perda de
informação quando comparada com a imagem da Figura 15, codificada com 24 bits de
profundidade.
Profundidade de
cores
Quantidade de
cores
Tamanho do arquivo sem
compressão
Perda de
informação (%)
24 16.777.216 746 KB ---
16 65.536 498 KB 33,24%
8 256 251 KB 66,35%
4 16 125 KB 83,24%
1 2 31,3 KB 95,80%
Quadro 3. Efeito da redução da profundidade de cores no tamanho do arquivo
Assim como o espaço de cores, a profundidade de cores também tem
influência no resultado da segmentação da imagem. Na detecção de pele humana em
fotografias realizada no trabalho de Cardoso (2009), houve uma variação da Medida-F
42
(média harmônica entre a taxa de detecção e a precisão) de 3,05% até 58,95% utilizando
o espaço de cores YCbCr. O Quadro 4 detalha o resultado obtido.
Profundidade de Cor Medida-F (Fm)
1 bit por canal (2 níveis) 3,05%
2 bits por canal (4 níveis) 1,52%
3 bits por canal (8 níveis) 44,87%
4 bits por canal (16 níveis) 52,60%
5 bits por canal (32 níveis) 57,42%
6 bits por canal (64 níveis) 58,95%
7 bits por canal (128 níveis) 58,11%
8 bits por canal (256 níveis) 57,02%
Quadro 4. Influência da profundidade de cor na detecção de pele humana em fotografias
Fonte: Adaptado de (Cardoso, 2009)
O resultado do Quadro 4 mostra que uma maior quantidade de bits por canal
não aumenta a Medida-F na detecção de pele humana e comprova a influência da
profundidade de cores no resultado da segmentação.
3.3 Textura
Cada pesquisador define textura de forma diferente, dependendo da
aplicação específica em que é utilizada. Tuceryan, et al. (1999) definem textura como “a
function of the spatial variation in pixel intensities” e pode ser entendido como uma
função de variação espacial de intensidades de pixels. O autor Cardoso (2009) explica
que textura é um padrão homogêneo resultante da presença de pequenas variações de
uma intensidade de cor que caracterizam certos tipos de materiais.
43
A textura é outro fator importante no processo de segmentação de imagens,
haja vista que tons acinzentados podem estar presentes em asfalto e telhados, por
exemplo. Um segmentador que leva em consideração apenas a cor pode ser ludibriado
mais facilmente que outro segmentador que analisa também a textura.
Figura 20. Comparação visual entre diferentes texturas
Fonte: (Cardoso, 2009)
A Figura 20 ilustra um exemplo de tons de verde com textura de grama e
sem textura. O reconhecimento de textura pela visão um humana é um processo
relativamente fácil, porém o mesmo não se aplica para os computadores, pois estes
devem executar técnicas computacionais implexas e custosas.
Material Segmentador com informação de
cor (Medida-F)
Segmentador com informação de textura
e cor (Medida-F)
Grama 96,76% 95,85%
Céu azul 78,42% 96,18%
Quadro 5. Influência da textura na detecção de materiais
Fonte: Adaptado de (Cardoso, 2009)
44
O Quadro 5 mostra a influência da textura na segmentação de imagem. Na
detecção de céu azul realizada por Cardoso (2009), houve um aumento na medida-F,
porém na detecção de grama houve uma diminuição desta medida.
A utilização da textura para realização da segmentação de imagens deve ser
avaliada em cada caso específico para verificar qual o melhor método para detecção do
material estudado.
3.4 Inteligência Artificial
Existem várias definições para Inteligência Artificial – IA. Cada autor segue
uma linha diferente de pensamento. Para Haugeland (1985), IA é o esforço para fazer os
computadores pensarem utilizando-se a mente, no sentido literal e total. A definição de
Araribóia (1988) para IA é “um campo que usa técnicas de programação que procuram,
por intermédio de máquinas, resolver problemas do mesmo modo que um ser humano
os resolveria”. Kurzweil (1990) entende que máquinas que executam funções que
exigem inteligência quando executadas por pessoas é uma forma de IA. No trabalho de
Charniak, et al. (1985), é explicado que inteligência artificial é “o estudo das faculdades
mentais pelo uso de modelos computacionais”.
Dentre as várias definições, destaca-se a explicação dada por Nikolopoulos
(1997). O autor diz que a IA:
[...] é um campo de estudos multidisciplinar, originado da computação, da
engenharia, da psicologia, da matemática e da cibernética, cujo principal
45
objetivo é construir sistemas que apresentem comportamento inteligente e
desempenhem tarefas com um grau de competência equivalente ou superior
ao grau com que um especialista humano as desempenharia (Nikolopoulos,
1997).
A IA possui 2 paradigmas principais: simbolista e conexionista. Na IA
simbolista, os processos inteligentes são simulados a partir da lógica booleana. Já a IA
conexionista diz que a inteligência artificial verdadeira deve simular o processo da
inteligência natural, pois existem problemas que são impossíveis de serem deduzidos
em algoritmos, não tendo assim uma solução computável.
Existem algumas técnicas para a resolução de problemas utilizando
inteligência artificial. Algumas destas técnicas são: buscas, sistemas baseados em
regras, raciocínio baseado em casos e lógica fuzzy.
A busca é uma técnica utilizada quando não há uma abordagem direta nem
uma estrutura que possibilite outras técnicas serem usadas. A partir de todas as
possíveis soluções, o agente irá percorrer uma a uma até uma solução satisfatória seja
encontrada.
Sistemas baseadas em regras são aqueles, como o próprio nome sugere,
sistemas baseados em regras do tipo “Se... Então...”. Estes sistemas são muito
utilizados, pois dão origem aos sistemas especialistas. Um sistema especialista é um
software que tem a capacidade de aconselhar ou encontrar soluções para problemas de
uma área específica.
A técnica do raciocínio baseado em casos tem por objetivo utilizar a
experiência adquirida com problemas passados para resolver problemas futuros.
Sistemas que utilizam esta técnica armazenam problemas e suas respectivas soluções,
46
assim, quando existe um problema a ser solucionado, o sistema verifica se existe algum
problema simular que já tenha sido resolvido e caso exista em sua base de dados, aplica
a solução ao problema atual.
A lógica fuzzy é baseada na lógica booleana, onde uma premissa ou é falsa
ou verdadeira, sendo representada pelos números 0 ou 1. Na lógica fuzzy, uma premissa
pode variar de 0 a 1, adicionando assim a característica da probabilidade. Esta lógica
permite expressar o conhecimento e as soluções de modo semelhante à linguagem
natural e por isto é utilizada nas redes neurais artificiais.
3.4.2 Redes neurais artificiais
Haykin (1999) explica que:
O cérebro é um computador (sistema de processamento de informação)
altamente complexo, não-linear e paralelo. Ele tem a capacidade de organizar
seus constituintes estruturais, conhecidos por neurônios, de forma a realizar
certos processamentos [...] muito mais rapidamente que o mais rápido
computador digital hoje existente (Haykin, 1999).
A rede neural artificial – RNA – é um modelo computacional que tem
inspiração na rede neural natural, ou seja, a RNA tenta reproduzir o funcionamento do
cérebro humano. Como o conhecimento acerca do funcionamento do cérebro humano é
ainda bastante limitado, as RNAs são um modelo grosseiro de representação da rede
neural humana.
47
O cérebro humano é caracterizado pela grande quantidade de elementos
processadores – neurônios – interligados a vários outros neurônios. Estes neurônios são
responsáveis pelo processamento paralelamente distribuído. Para Haykin (1999), as
RNAs assemelham-se ao cérebro humano por 2 motivos:
O conhecimento é adquirido através de um processo de aprendizagem;
Os pesos sinápticos, ou forças de conexão entre neurônios, são
responsáveis por armazenar o conhecimento adquirido.
O poder computacional das RNAs, na ótica de Haykin (1999), se dá por 2
motivos: a estrutura paralelamente distribuída e a habilidade de aprender – generalizar.
Estas características dão à rede neural artificial a capacidade de resolver problemas
complexos que são atualmente intratáveis.
Parâmetro Computação tradicional Computação neural
Sinal Digital Analógico
Dados Completos e Estruturados Incompletos e nebulosos
Programas Dependentes de instruções Formulam métodos de processamento de maneira independente
Processamento Matemático e lógico Sinais ponderados
Resultados Previsíveis Geralmente imprevisíveis
Memória Separada do processamento Geralmente memória e processamento
estão combinados
Controle de
processos
Centralizado Distribuído
Quadro 6. Comparação entre computação tradicional e neural
Fonte: Adaptado de (Cardoso, 2009)
O Quadro 6 exibe as principais diferenças entre a computação tradicional e
neural.
48
A unidade básica da rede neural natural, e também artificial, é o neurônio.
Ele é responsável por realizar o processamento dos sinais. Esta unidade básica recebe
impulsos de outros neurônios, combina e processa as entradas e envia um sinal.
Figura 21. Representação de um neurônio biológico
Fonte: Adaptado de (University of Texas, 2006)
Como não é o foco deste trabalho a biologia do neurônio, Figura 21, ele será
dividido em 3 partes distintas: dendritos, corpo celular e axônio. Os dendritos são
responsáveis por receberem os impulsos nervosos – sinais elétricos – dos outros
neurônios. É no corpo celular onde ocorre o processamento dos impulsos recebidos
pelos dendritos, dando origem a um novo impulso. Este impulso, processado pelo soma,
passa pelo axônio e é transmitido por meio das terminações do axônio para os neurônios
vizinhos.
49
O processamento de informação no neurônio inicia-se com o recebimento
dos impulsos gerados pelos neurônios vizinhos, que segundo Barreto (2002), chega a
aproximadamente 1.000 neurônios. Estes sinais são enviados ao corpo celular – soma –
que realiza o processamento e gera um novo sinal elétrico que é dependente dos sinais
recebidos e do próprio limiar do corpo celular. O sinal processado passa pelo axônio até
chegar às suas terminações, onde ocorrem as sinapses.
Figura 22. Representação de uma sinapse
Fonte: Adaptado de (Ballone, 2006)
A sinapse, ilustrada na Figura 22, é uma espécie de conexão entre os
neurônios que possibilita a transmissão do sinal elétrico do axônio de um neurônio para
o dendrito do seu vizinho. A terminação do axônio não toca o dendrito do neurônio
vizinho, a transmissão é possível graças à presença de substâncias chamadas
50
neurotransmissores e neurorreceptores. Os neurotransmissores estão presentes nas
terminações nervosas dos axônios e os neurorreceptores nos dendritos. A reação
química entre neurotransmissores e neurorreceptores possibilita a transmissão do
impulso entre os neurônios vizinhos. A quantidade de neurotransmissores depende da
eficiência da sinapse e da intensidade do impulso nervoso do neurônio gerador, explica
Cardoso (2009), fazendo com que o sinal transmitido seja mais ou menos intenso.
Figura 23. Neurônio artificial
Fonte: Adaptado de (Schamel, 2007)
Para simular o funcionamento do neurônio biológico, foi criado o neurônio
artificial, ilustrado na Figura 23, que é utilizado na rede neural artificial. O neurônio
artificial é análogo ao neurônio natural, pois recebe sinais através das suas entradas,
calcula o somatório dos produtos das entradas com seus respectivos pesos, o somatório
passa por uma função de ativação não linear que resulta em um sinal de saída.
Existe ainda uma entrada com valor fixo 1, denominada bias, onde seu peso serve para
o ajuste da saída.
51
Analisando o neurônio artificial, é possível identificar os dendritos, corpo
celular e axônio. As entradas do neurônio artificial equivalem aos dendritos, o
somatório das entradas e a função de ativação equivalem ao corpo celular e a saída tem
a função do axônio. Ainda é possível comparar o peso das entradas com as força de
cada sinapse.
O uso do neurônio artificial permite criar a RNA de forma semelhante à
rede neural humana. O modelo mais empregado para problemas de classificação de
padrões é a da rede neural artificial Perceptron de Múltiplas Camadas (MLP –
Multilayer Perceptron), que pode ser vista na Figura 24.
Figura 24. Rede neural artificial do tipo MLP
Fonte: Adaptado de (Cardoso, 2009)
52
As MLPs têm 3 tipos de camadas: entrada, oculta e saída. Os neurônios da
camada de entrada recebem sinais do exterior, os das camadas ocultas realizam o
processamento da RNA MLP e os da camada de saída devolvem os sinais para o
exterior. A quantidade de camadas ocultas e de neurônios em cada uma destas camadas
é variável.
Redes neurais MLP utilizam o paradigma de aprendizado supervisionado,
ilustrado na Figura 25. Neste paradigma, o professor indica de forma explicita se as
respostas dadas pela RNA estão corretas ou não. Para cada vetor de entradas
apresentado a rede, é gerada uma resposta que é analisada pelo professor e caso a
resposta esteja errado, o supervisor informa a saída correta. Comparando-se a resposta
da rede com a do professor, é possível computar o sinal de erro, definido como a
diferença entre a resposta do professor e da rede.
Figura 25. Paradigma de aprendizado supervisionado
Fonte: (Cardoso, 2009) adaptado de (Haykin, 1999)
53
Sobre o ajuste dos pesos, Haykin (1999) explica que:
[...] é realizado passo a passo, iterativamente, com o objetivo de fazer a rede
neural emular o professor [...] Desta forma, o conhecimento do ambiente
disponível ao professor é transferido para a rede neural através de
treinamento, da forma mais completa possível” (Haykin, 1999).
Quando a quantidade de iterações atinge um determinado limiar ou o erro
médio quadrático é computacionalmente aceitável, o processo de treinamento é
finalizado.
Dentre os vários algoritmos de treinamento existentes – são exemplos:
aprendizado Hebbiano, regra delta, retropropagação e algoritmos genéticos –, o mais
utilizado é o de retropropagação, ou backpropagation. No algoritmo backpropagation,
os ajustes dos pesos são realizados da camada de saída para a de entrada, ou seja, de trás
para frente. Para um estudo mais aprofundado, recomenda-se a leitura de Barreto
(2002), Cardoso (2009) e Haykin (1999).
3.5 Técnicas de Segmentação de Imagem
As técnicas de segmentação de imagem baseadas em computação visual
podem ser classificadas de maneira macro em: detecção de descontinuidades e
similaridade entre regiões e limiarização.
54
Na detecção de descontinuidades, mudanças bruscas nos tons de cinza da
imagem são assinaladas pelos algoritmos. Esta técnica pode ser utilizada para detectar
pontos, linhas e bordas. Saldanha, et al. (2009) comentam que a grande maioria dos
algoritmos utiliza a convolução, aplicando máscaras para detectarem descontinuidades
na imagem.
Como na detecção de descontinuidade, principalmente na detecção de linhas
e bordas, apresentam falhas devido ao ruído e quebras na fronteira, posteriormente são
utilizados algoritmos para ligação e composição das fronteiras, explanam Cardoso
(2009), Gonzalez, et al. (2000), Saldanha, et al. (2009) e Venturieri (1996).
Diferentemente da detecção de descontinuidade que buscava mudanças
bruscas nos pixels, a detecção de similaridade entre regiões “tem como fundamento a
observação do interior dos objetos e não as fronteiras que os delimitam” (Saldanha, et
al., 2009). Os autores Saldanha, et al. (2009) elucidam ainda que este tipo de detecção
“parte da idealização que os pixels que compõe um objeto têm propriedades similares
enquanto que pixels de objetos distintos têm propriedades distintas”.
Cardoso (2009) esclarece em seu trabalho que este tipo de detecção utiliza
algoritmos de crescimento de região, como o floodfill,para separar a imagem em regiões
de cor similar, além disto, a divisão e fusão de regiões são técnicas que podem sem
empregadas para aprimorar a segmentação.
Para Gonzalez, et al. (2000), a limiarização de imagens é uma das
abordagens mais importantes para a segmentação. Como o nome sugere, a limiarização
utiliza limiares, ou seja, limites para identificar a qual região um pixel pertence. A
limiarização pode utilizar 1 ou mais limites para classificação dos pixels em regiões.
Um exemplo simples é classificar pixels com intensidade menor que 127 como
55
pertencentes à região A e pixels com intensidade maior ou igual a 127 como
pertencentes à região B.
Uma técnica mais atual é utilização de redes neurais artificiais para
segmentação de imagem. As RNAs, após a aquisição de conhecimento, podem resolver
problemas computacionalmente complexos, como é o caso da segmentação de imagens.
Muitos estudos estão sendo feitos nos últimos anos na referida área, com destaque para
o método desenvolvido por (Cardoso, 2009).
Em seu trabalho, Cardoso (2009) propôs um método que utilizando uma
RNA do tipo MLP, foi capaz de segmentar tipos diferentes de materiais em imagens
digitais, sendo necessário para isso realizar o treinamento da rede. Por utilizar uma rede
neural artificial, não é preciso desenvolver um algoritmo específico para cada tipo de
material que se deseje detectar. Deste modo, é possível criar um segmentar genérico de
materiais, viabilizando a construção de uma solução para o georreferenciamento de
objetos, foco do presente trabalho.
Para utilizar o método desenvolvido por Cardoso (2009), é necessário ter
um conjunto de imagens segmentadas manualmente para a aquisição de conhecimento,
bem como para validação e medição das respostas fornecidas pela RNA. Nos
experimentos realizados pelo autor, o segmentador atingiu Medida-F de 97,11%,
51,01% e 92,84% na segmentação de grama, pele humana e céu azul, respectivamente.
Um estudo mais aprofundado a respeito das técnicas de segmentação de
imagem pode ser realizado com a leitura de Cardoso (2009), Gonzalez, et al. (2000),
Saldanha, et al. (2009) e Venturieri (1996).
56
3.6 Considerações Finais
Este capítulo abordou temas introdutórios a cerca da segmentação de
imagens, inteligência artificial e redes neurais artificiais, como também fez uma breve
explanação sobre as principais técnicas utilizadas na segmentação de imagem.
A segmentação é um tema bastante conhecido e com grande quantidade de
estudos realizados, apesar disso, esta área tem bastante potencial para o
desenvolvimento de novas técnicas, como exemplo, o estudo e emprego de redes
neurais artificiais.
No que tange as técnicas de segmentação de imagens, destaca-se o método
proposto por Cardoso (2009) que foi capaz de segmentar diferentes materiais em
imagens de maneira automatizada utilizando uma rede neural artificial do tipo MLP.
4 MÉTODO PROPOSTO
Este capítulo apresenta o método proposto para automatização do
georreferenciamento de objetos a partir de ortofotos – imagens de tomada aérea na qual
é possível calcular a posição geográfica de qualquer ponto. Inicialmente é fornecida
uma visão geral das principais fases do método proposto, prosseguindo com o
detalhamento de cada uma delas e por fim a implementação do protótipo de software.
57
4.1 Visão Geral
A Figura 26 contempla a visão geral do método proposto.
Figura 26. Visão geral do método proposto
O método pode ser dividido em 3 fases principais:
1. Segmentação da imagem: nesta fase é realizada a detecção do material
desejado na imagem;
2. Geração do polígono: utilizando como insumo a imagem segmentada na
fase anterior, é gerado o polígono correspondente a região segmentada;
3. Georreferenciamento do polígono: utilizando como insumo o polígono
gerado na fase anterior, é realizado o georreferenciamento do polígono
da imagem.
Vale ressaltar que a fase da geração do polígono utiliza como insumo o
resultado da fase anterior, ou seja, quanto melhor for o resultado da segmentação da
imagem, melhor também será o da fase seguinte.
58
4.2 Segmentador Neural Baseado em Informação de Textura e
Cor
Os trabalhos de Gonzalez, et al. (2000) e Saldanha, et al. (2009) explicam
que o desenvolvimento de algoritmos com a finalidade de automatizar o processo de
segmentação de imagem é uma das tarefas mais complexas na área de processamento de
imagens, além disto, Yong, et al. (2004) esclarecem que para alcançar um resultado
aceitável, o algoritmo deve ser dotado de heurísticas que abranjam tanto informação
semântica, como conhecimento a priori sobre as imagens que estão sendo processadas.
Baseado na informação de Yong, et al. (2004), conclui-se que para
segmentar imagens de maneira satisfatória, é preciso desenvolver um algoritmo
específico para cada tipo de material que será manipulado. Como este trabalho teve a
pretensão de elaborar uma solução para automatização do georreferenciamento de
objetos, isto é, detectar variados tipos de materiais, tornar-se-ia inviável utilizar um
método de segmentação de imagem baseado em técnicas tradicionais de computação
visual.
É sabido que uma forma de passar conhecimento para um programa de
computador é utilizando as redes neurais artificiais, por isto inicialmente optou-se pelo
método proposto por Cardoso (2009) para a segmentação das ortofotos.
Este método foi capaz de segmentar com alta precisão diferentes tipos de
materiais em imagens de maneira automatizada, utilizando para isto uma rede neural
artificial do tipo MLP.
59
Figura 27. Visão geral do segmentador neural baseado em informação de textura e cor
Fonte: (Cardoso, 2009)
A visão geral do segmentador, ilustrada na Figura 27, e a ideia macro do seu
funcionamento são simples. Resumidamente, é apresentada uma base de treinamento
para a rede MLP, gera-se então o segmentador baseado em informação de cor,
posteriormente gera-se o segmentador baseado em informação de textura e cor e por fim
é feita a expansão das regiões fornecidas na etapa anterior.
De maneira simplória, o software treina a rede neural artificial mediante as
imagens de treinamento. No processo de treinamento é preciso informar parâmetros
como quantidade de neurônios da camada oculta, tamanho da janela a ser utilizada na
imagem, espaço de cores, profundidade da imagem e quantidade de épocas. Concluída
esta etapa, é possível fornecer uma imagem para que a rede neural faça a segmentação
de maneira automatizada.
A etapa de treinamento foi realizada diversas vezes com as mais variadas
configurações a fim de obter um melhor segmentar baseado em informação de cor.
Percebeu-se que o resultado deste segmentador na segmentação de asfalto não teria
grande êxito, visto que a medida-F do segmentador estava baixa.
60
Figura 28. Segmentador baseado na informação de cor executada para detecção de asfalto
A medida-F abaixo das expectativas pode ser explicada por 2 principais
motivos: semelhança de textura e cor do asfalto com outros materiais e não
uniformidade das características do asfalto.
Em Aracaju, como também em demais cidades no Brasil, o asfalto não
possui uma cor e textura semelhantes. É comum encontrar asfalto com coloração bem
escura – próximo ao preto –, e bem clara – próximo ao branco. Uma justificativa para
este fenômeno é o tempo de vida do asfalto.
Tendo assim tons que variam do branco ao preto, a cor e textura do asfalto
em muitos casos foram semelhantes a alguns tipos de telhados, dificultando assim a
detecção do asfalto nas imagens.
A Figura 29 ilustra os problemas citados. Percebe-se que a cor do asfalto (f)
é bastante diferente dos demais e que as texturas de (c) e (e) não se assemelham com as
texturas de (a) e (f). A identificação do asfalto sem informação semântica do restante da
imagem é um desafio até mesmo para os humanos, tornando-se muito mais complexa
quando executada por um sistema computacional.
61
Figura 29. Diferentes tipos de materiais
Analisando a cor e textura dos materiais e a medida-F, chegou-se a
conclusão que o segmentador neural não alcançaria a precisão desejada e por tal motivo,
não foi dado prosseguimento na obtenção dos demais segmentadores.
Como o resultado da segmentação não foi satisfatório, houve a necessidade
da utilização de um novo método de segmentação de imagens, abordado no tópico 4.3.
4.2.1 Geração de polígonos a partir de imagens segmentadas
A segunda etapa recebe como entrada a imagem obtida do segmentador
neural e tem por finalidade gerar o polígono da região segmentada na imagem. Além da
62
imagem de entrada, esta fase aceita 2 parâmetros: número de pixels a ser pulado e limite
da distância entre os pixels.
O número de pixels a ser pulado informa quantos pixels serão ignorados na
busca por um pixel vizinho. O parâmetro referente ao limite da distância entre os pixels
informa o maior valor aceito na diferença entre a distância das coordenadas X e Y dos
pixels 1 e 2 e pixels 1 e 3. Este limite permite ajustar a sensibilidade do método, onde
um menor limite ocasionará uma tolerância menor na mudança de direção dos pixels e,
por conseguinte maior quantidade de pontos para formar o polígono.
Figura 30. Polígono gerado com configuração 19-1
A Figura 30 mostra uma imagem segmentada, onde a região branca
representa asfalto e a região preta não asfalto. Os pontos em vermelho são os vértices do
63
polígono e as linhas em amarelo são as arestas. O polígono foi gerado com os
parâmetros número de pixels a ser pulado igual a 19 e limite da distância entre os pixels
igual a 1.
Figura 31. Polígono 19-1 com área destacada
Na Figura 31, a área do polígono foi preenchida em azul para mostrar a
precisão do algoritmo. As pequenas regiões em branco representam as áreas que não
foram marcadas como pertencentes ao polígono por causa da configuração escolhida.
Quanto menor o limite da distância e os pixels pulados, menor será a área branca e
maior será a precisão do polígono.
64
Figura 32. Polígono com configuração 15-7
A Figura 32 mostra o polígono gerado a partir da mesma imagem
segmentada, porém com configuração 15-7. As regiões em branco erroneamente não
pertencem ao polígono, enquanto as regiões verdes incorretamente pertencem ao
polígono.
O polígono gerado na Figura 33 ilustra a maior precisão que o método
permite. Percebe-se que não existem as regiões brancas ou verdes, visto que todos os
pixels foram analisados e não foi tolerada mudança de direção dos pixels.
65
Figura 33. Polígono com configuração 1-0
As Figuras 30, 31, 32 e 33 foram obtidas a partir de uma imagem de
treinamento apresentada ao segmentador neural. É notório que o método para geração
dos polígonos é válido e proporciona alta precisão, entretanto é sensível a imagens
segmentadas incorretamente.
A Figura 34 exemplifica a sensibilidade do método a imagens segmentadas
incorretamente. De maneira proposital, foi apresentada como entrada a mesma ortofoto,
porém obtida do segmentador neural. A sensibilidade é justificada pela forma de
funcionamento do método que gera o polígono.
66
Figura 34. Polígono gerado a partir de imagem obtida do segmentador neural
O método procura um pixel de cor preta que faz fronteira com um pixel de
cor branca, ou seja, um pixel pertencente à fronteira entre não asfalto e asfalto. Com o
primeiro pixel aceito pelo critério de busca, o método obtém o pixel vizinho não
visitado também pertencente ao mesmo critério.
Quando não é encontrado nenhum pixel vizinho não visitado que atenda ao
critério, é feita uma varredura na imagem procurando por algum pixel não visitado e
que atenda ao critério. Este processo é realizado, visto que as calçadas das ruas não são
conectadas, deste modo, é preciso realizar uma busca na imagem para localizar novos
pontos de interesse.
O resultado visto na Figura 34 corrobora a afirmação de que o segmentador
neural não funcionou como esperado na detecção de asfalto, bem como o método para
67
geração dos polígonos só pode ser aplicado a imagens segmentadas de maneira bem
controlada.
4.3 Segmentador Baseado no Crescimento de Regiões
Não surtindo o efeito desejado na segmentação das imagens, optou-se por
implementar o algoritmo floodfill, que é um método de segmentação de imagens
baseado no crescimento de regiões. O floodfill busca por similaridades na imagem a
partir de uma semente, ou seja, pixel de referência.
O algoritmo implementado recebe como parâmetros a semente e um limiar.
A segmentação é iniciada pela semente e a comparação da similaridade entre os pixels
utiliza como referência a semente. Para cada pixel não visitado adjacente a semente, é
verificado se cada canal do espaço cores RGB sofre uma variação aceitável pelo limiar
informado, sendo a variação menor ou igual ao limiar, o vizinho é adicionado na fila.
Este processo se repete até não haver mais pixels na fila. Os pixels adjacentes são
adicionados na fila em sentido horário, de tal modo que o segmentador realiza o
crescimento da região em espiral.
68
Figura 35. Resultado da segmentação baseada no crescimento de regiões
A Figura 35 exibe o resultado do segmentador com semente (265, 755) e
limiar 40. A Figura 36 ilustra a mudança de comportamento na segmentação quando o
limiar é reduzido de 40 para 10 e a semente é mantida.
Figura 36. Segmentação realizada com semente (265, 755) e limiar 10
69
O método além de segmentar a imagem, devolve as coordenadas X e Y mais
externas dos pixels adicionados na fila. Estes valores são utilizados na etapa seguinte da
geração do polígono.
O segmentador que utiliza o algoritmo floodfill mostrou-se mais eficaz –
para os objetivos deste trabalho – que o segmentador neural na detecção de asfalto.
4.3.1 Geração de polígonos a partir de imagens segmentadas
A fase da geração de polígonos a partir do segmentador baseado no
crescimento de regiões tem seu funcionamento bastante diferente da geração de
polígonos discutido no tópico 4.2.1.
A geração de polígonos atual recebe 5 parâmetros: 1 parâmetro para
informar a orientação da rua e 4 com informações sobre as extremidades das
coordenadas X e Y. A orientação da rua pode ser horizontal, vertical ou ainda
automática. Os parâmetros das extremidades das coordenadas X e Y são utilizados para
ajudar na geração do polígono, informando o X mais a esquerda e direita e o Y superior
e inferior dos pixels segmentados. Estes parâmetros são obtidos da fase anterior e dizem
respeito aos pixels que fazem parte da região expandida.
Quando a orientação da rua é informada como automática, o método
verifica qual a rua de maior extensão, entretanto nem sempre esta pode ser a região que
se deseja georreferenciar. As Figuras 37 e 38 legitimam a importância deste parâmetro
para a geração do polígono.
70
Figura 37. Polígono gerado com orientação horizontal
Caso seja utilizada a orientação horizontal ou automática na Figura 37, o
método irá criar o polígono da rua que está na horizontal. Neste caso específico, a
orientação automática detecta que a rua é horizontal, haja vista que a rua vertical na
imagem possui menor extensão que a rua na horizontal.
Em casos como os das Figuras 37 e 38, é importante informar ao método
qual a orientação que se deseja utilizar para gerar o polígono que representa a rua de
interesse.
71
Figura 38. Polígono gerado com orientação vertical
Com as extremidades da região segmentada e a orientação da rua, o método
procura os lados da rua e deste modo é possível gerar um polígono que a represente,
mesmo que a segmentação detecte mais de uma rua ou avenida, como no caso das
Figuras 37 e 38, na qual apenas a rua ou a avenida foram representadas no polígono.
Apesar deste método ser menos sensível que o método que gera o polígono
a partir do segmentador neural, vale ressaltar que quanto melhor for a segmentação da
imagem, melhor será o resultado do polígono gerado. A utilização de uma boa semente
e limiar adequado resulta em um melhor resultado na fase da segmentação da imagem.
72
4.4 Georreferenciamento de Ruas e Avenidas
A última fase, mas não menos importante, é o georreferenciamento do
polígono que representa uma rua ou avenida. É nesta fase que o polígono desenhado na
imagem é georreferenciado, possibilitando sua visualização em SIGs.
Para tornar possível a obtenção da posição geográfica de um ponto (X, Y)
na imagem é um ponto geoespacial, se faz necessário possuir algumas informações a
cerca da ortofoto. Estas informações são: escala dos eixos X e Y, rotação dos eixos X e
Y e posição do pixel superior esquerdo da imagem em uma projeção. Com
conhecimento destas informações é possível localizar qualquer pixel da imagem na
superfície terrestre.
As ortofotos obtidas da Secretaria Municipal de Planejamento de Aracaju
possuem as informações na projeção cartográfica UTM – Universal Transverse
Mercator – e datum planimétrico SAD-69 (South American Datum).
Com o polígono gerado na segunda fase do método, é feito o
georreferenciamento dos vértices do objeto geométrico. Cada vértice nada mais é que
um ponto (X, Y) posicionado na imagem. Partindo do vértice, é calculada sua
localização geográfica com base nas informações da ortofoto. A localização é calculada
na projeção UTM e datum planimétrico SAD-69.
Para facilitar a manipulação dos dados, é realizada uma conversão do
sistema de coordenadas planas para o sistema de coordenadas geográficas, o que
possibilita trabalhar com a latitude e longitude do ponto. A conversão do sistema de
coordenadas foi realizada com uso da classe CoordinateConversion desenvolvida por
Salkosuo (2007).
73
Apesar da classe CoordinateConversion realizar a conversão de UTM para
coordenadas geográficas, ela utiliza o datum planimétrico WGS-84 (World Geodetic
System), entretanto as informações das ortofotos estão em SAD-69. Por tal motivo, a
classe CoordinateConversion foi adaptada para trabalhar com o datum SAD-69.
Realizada a conversão, o polígono é representado no formato WKT – Well-
Known Text –. Deste ponto em diante, todos os softwares que aderem ao padrão WKT,
que é regulamentado pela organização Open Geospatial Consortium (OGC), são aptos a
manipular o polígono.
4.5 Detalhes da Implementação do Protótipo
Com exceção do segmentador neural, desenvolvido por Cardoso (2009) e
implementado na linguagem de programação C++, todos os módulos do protótipo foram
desenvolvidos em Java. A adoção desta linguagem é justificada por ser orientada a
objetos, o que o que facilita importantes aspectos no âmbito da engenharia de software
(reusabilidade, extensibilidade, manutenibilidade, entre outros), possuir boas IDEs –
Integrated Development Environments – que facilitam o desenvolvimento, ser padrão de
mercado e ser executada nos mais diversos sistemas operacionais.
Além disto, o projeto OL4JSF – OpenLayers For JSF –, desenvolvido por
Vasconcelos, et al. (2010), foi implementado na linguagem Java seguindo o padrão JSF
– JavaServer Faces –. O OL4JSF é um conjunto de componentes JSF que facilita o
desenvolvimento de SIGs Web.
Os testes realizadas para compor a avaliação experimental foram executados
em um computador equipado com processador Intel Core2 Quad com 2,4 GHz – Giga
74
Hertz –, 4 GB – Giga Bytes – de memória RAM (Random Access Memory), 500 GB de
disco rígido e que executa o sistema operacional Microsoft Windows 7 Ultimate 64 bits.
Para executar o segmentador neural, foi utilizado o software de virtualização
Sun VirtualBox 3.1.8 com uma máquina virtual preparada com o sistema operacional
Ubuntu 10.04, 3 núcleos do processador Intel Core2 Quad com 2,4 GHz, 1 GB de
memória RAM e 20 GB de disco rígido.
4.6 Considerações Finais
Este capítulo descreveu o método proposto neste trabalho para automatizar
o georreferenciamento de ruas e avenidas a partir do reconhecimento de imagens.
A principal característica do método é não precisar que agentes em campo
façam coletas com dispositivos GPS, reduzindo assim o custo e o tempo do processo e
ainda acrescendo o nível de automatização do processo.
Apesar do segmentador não prover os resultados esperados, o segmentador
baseado no crescimento de regiões foi capaz de segmentar avenidas e ruas de maneira
satisfatória, o que possibilitou a geração dos polígonos e posteriormente o
georreferenciamento.
No próximo capítulo, são descritos os resultados experimentais da utilização
do método proposto em problemas reais de detecção de asfalto em ruas e avenidas.
75
5 AVALIAÇÃO EXPERIMENTAL
Com o intuito de avaliar experimentalmente o método de automatização do
georreferenciamento de objetos proposto neste trabalho, foi desenvolvido um estudo de
caso envolvendo a detecção de ruas e avenidas em ortofotos.
Este capítulo é dedicado a descrever o estudo de caso, apresentando e
discutindo os resultados obtidos.
5.1 Detecção de Ruas e Avenidas em Ortofotos
O problema da detecção de objetos em ortofotos consiste em utilizar como
entrada ortofotos de cidades de Aracaju, cedidas pela Secretaria de Planejamento do
Município, para detectar as ruas ou avenidas de interesse.
O georreferenciamento de ruas e avenidas pela detecção automática na
imagem tem utilidade em uma variedade de aplicações, desde SIGs até sistemas de
navegação baseados em GPS. SIGs que trabalham com a localização de imóveis ou com
o tráfego de automóveis são exemplos de sistemas que necessitam das ruas e avenidas
georreferenciadas. Um sistema de navegação terrestre de GPS não pode informar
possíveis rotas sem o conhecimento das ruas e avenidas disponíveis.
Métodos atuais, como os propostos por Vieira, et al. (2008) e Folador, et al.
(2008), necessitam usar um agente em campo dotado de um aparelho GPS para coletar a
posição geográfica dos vértices do polígono, delimitando assim a área do objeto a ser
georreferenciado.
76
5.1.1 Segmentador neural
Para utilizar o segmentador neural na detecção das ruas e avenidas, foi
utilizada uma base de treinamento que apresenta regiões de indeterminação. A Figura
39 é um exemplo de imagem de treinamento com sua respectiva máscara.
Figura 39. Exemplo de imagem do conjunto de treinamento para detecção de asfalto, com sua respectiva
segmentação manual
A base contém 5 ortofotos de áreas diferentes da cidade de Aracaju com
resolução de 1024 x 768 pixels. Destas imagens, 3 foram destinadas a compor o
conjunto de treinamento para obtenção do segmentador neural. Ao todo, foram
1.786.370 pixels de não asfalto e 407.991 pixels de asfalto da base de treinamento.
Na avaliação do segmentador neural são utilizadas 3 métricas: taxa de
detecção, precisão e medida-F.
“A taxa de detecção de um segmentador é a medida que indica a relação
entre a área da imagem corretamente classificada como sendo pertencente ao material
que se deseja detectar e a área total deste material” (Cardoso, 2009). Como a taxa de
77
detecção só mede a área do material de interesse, é utilizada a precisão para indicar “a
relação entre a área da imagem corretamente classificada como sendo pertencente ao
material que se deseja detectar e a área total aceita pelo segmentador” (Cardoso, 2009).
Por fim, é utilizada a medida-F que é a média harmônica entre a taxa de detecção e a
precisão do segmentador neural.
O treinamento do segmentador neural foi realizado em uma primeira etapa
variando os espaços de cores para definir o melhor deles. Na segunda etapa, variou-se o
tamanho da janela. Em ambos os casos foram utilizados 8 bits de profundidade em cada
canal, 1.000 épocas e 12 neurônios na camada oculta.
Espaço de cores Taxa de detecção Precisão Medida-F
RGB 66,35% 45,39% 53,90%
HSV 65,34% 45,36% 53,54%
YCbCr 59,26% 48,67% 53,45%
XYZ 40,63% 52,74% 45,90%
HLS 69,04% 44,96% 54,46%
Lab 54,27% 46,84% 50,28%
Luv 45,95% 34,20% 39,22% Quadro 7. Determinação do melhor espaço de cores para segmentação de asfalto
Diante do Quadro 7, conclui-se que o melhor espaço de cores para a
segmentação de asfalto é o espaço HSL, visto que possui a maior medida-F entre os
demais avaliados.
O melhor tamanho de janela para a segmentação de asfalto utilizando o
espaço de cores HLS e profundidade de 8 bits por canal foi a janela 15 x 15, como pode
ser comprovado no Quadro 8. As Figuras 40 e 41 ilustram o melhor e pior caso,
respectivamente, do segmentador neural obtido.
78
Tamanho da janela Taxa de detecção Precisão Medida-F
1 x 1 85,24% 38,08% 52,65%
3 x 3 69,04% 44,96% 54,46%
5 x 5 58,23% 46,78% 51,88%
7 x7 63,52% 47,97% 54,66%
9 x 9 55,98% 46,15% 50,59%
11 x 11 72,66% 48,93 58,48%
13 x 13 61,76% 47,33% 53,59%
15 x 15 81,06% 48,93% 61,03%
17 x 17 84,60% 47,66% 60,97%
19 x 19 71,41% 34,94% 46,92%
21 x 21 82,64% 39,28% 53,25%
23 x 23 90,37% 45,45% 60,48%
25 x 25 89,82% 45,28% 60,21%
27 x 27 90,81% 43,74% 59,04%
29 x 29 74,40% 44,01% 55,31%
Quadro 8. Determinação do melhor tamanho de janela para segmentação de asfalto (HSL, 8 bits por canal)
Figura 40. Melhor caso obtido da aplicação do segmentador neural para detecção de asfalto (asfalto em
branco e demais regiões em preto)
79
Figura 41. Pior caso obtido da aplicação do segmentador neural para detecção de asfalto (asfalto em
branco e demais regiões em preto)
Como a melhor medida-F encontrada foi de apenas 61,03% e o método para
geração do polígono não foi capaz de obter resultados aceitáveis com esta taxa,
resolveu-se não continuar o treinamento do segmentador neural, partindo para outra
estratégia de segmentação das ortofotos.
5.1.2 Segmentador baseado no crescimento de regiões
O segmentador baseado no crescimento de regiões, diferentemente do
segmentador neural, não precisa de uma fase de treinamento, visto que não utiliza uma
rede neural artificial MLP.
Limiar Taxa de detecção Precisão Medida-F
30 46,66% 95,95% 62,81%
40 84,98% 91,37% 85,73%
50 92,15% 62,37% 74,39% Quadro 9. Resultados do segmentador baseado no crescimento de regiões na detecção de asfalto
80
O Quadro 9 mostra os resultados obtidos do segmentador baseado no
crescimento de regiões. Em todas as imagens as sementes foram mantidas, variando-se
apenas o limiar. Os resultados confirmam a importância que o limiar tem no processo
de segmentação, o que não elimina a importância da semente no método.
Este segmentador com limiar 30, pior resultado dentre os testes realizados,
obteve uma medida-F maior do que o segmentador neural em sua melhor configuração.
As Figuras 42 e 43 ilustram o melhor e o pior caso, respectivamente. O
melhor caso foi obtido com o limiar 40, já o pior, com o limiar 30.
Figura 42. Melhor caso do segmentador baseado no crescimento de regiões na detecção de asfalto com
limiar 40 (asfalto em vermelho)
Figura 43. Pior caso do segmentador baseado no crescimento de regiões na detecção de asfalto com
limiar 30 (asfalto em vermelho)
81
Nos casos em que o asfalto é pouco homogêneo, Figura 43, a escolha da
semente tem um peso maior no resultado final da segmentação, pois a seleção de um
pixel de tonalidade branca na parte inferior esquerda da Figura 43, por exemplo,
acarretará uma baixa detecção do asfalto e, por conseguinte baixa medida-F na
segmentação. Uma boa candidata a semente é aquela que representa de maneira mais
uniforme o material a ser detectado.
5.1.3 Resultados obtidos
A detecção de ruas e avenidas obteve melhores resultados quando
empregado o segmentador baseado no crescimento de regiões. Nos testes realizados,
este segmentador obteve medida-F de 85,73% com uso do limiar igual a 40. Já o
segmentador neural atingiu medida-F de 61,03%.
Apesar do segmentar neural não ser capaz de detectar asfalto de maneira
satisfatória nos testes realizados neste trabalho, é possível que, com uma base de
treinamento maior e novas configurações do método avaliadas, o segmentador neural
seja capaz de detectar asfalto em ortofotos com alta medida-F.
O segmentador baseado no crescimento de regiões possibilitou que a etapa
seguinte, da geração de polígonos, pudesse ser executada. São 2 os motivos principais:
melhores métricas alcançadas – taxa de detecção, precisão e medida-F – e as
informações sobre o posicionamento das extremidades do objeto segmentado.
A obtenção de melhores métricas informa que houve uma melhor
segmentação do material, o que torna mais eficaz o processamento da imagem. Além de
82
utilizar como insumo a imagem segmentada, a geração do polígono faz uso das
informações a cerca das extremidades das ruas e avenidas, como exposto na seção 4.3.1.
5.2 Resultado Obtido da Geração de Polígonos
O segmentador neural não obteve os resultados esperados, o que
inviabilizou a geração de polígonos com base nas imagens segmentadas por este
método, vide Figura 34.
Pelo exposto, os resultados obtidos da geração de polígonos são referentes
apenas às imagens que foram processadas pelo segmentador baseado no crescimento de
regiões.
5.2.1 Resultado a partir do segmentador baseado no crescimento
de regiões
O resultado obtido da geração de polígonos está intimamente ligado com o
resultado da segmentação da imagem. Normalmente, quanto maior a medida-F na
segmentação, melhor será o resultado do polígono.
As métricas utilizadas são as mesmas da fase de segmentação, visto que o
polígono nada mais é que uma área representada na imagem.
Limiar da segmentação Taxa de detecção Precisão Medida-F
40 88,42% 93,79% 91,03%
Quadro 10. Resultado da geração dos polígonos
83
Sendo 40 o limiar que obteve a melhor medida-F na segmentação das
imagens, o mesmo valor foi utilizado para avaliação da geração dos polígonos a partir
das imagens segmentadas e o resultado é exposto no Quadro 10.
Foi observado que o método de geração de polígonos é mais sensível a
falhas de segmentação nas regiões das extremidades da rua, sendo bastante robusto em
relação a falhas nas demais regiões.
Figura 44. Melhor caso da geração do polígono (área de interesse em vermelho)
O melhor caso é mostrado na Figura 44, onde a medida-F foi de 99,25%.
Em (b) é mostrada a área criada manualmente que representa a avenida e (c) a área que
representa o polígono gerado. A imagem obtida do segmentador é vista na Figura 42
84
(b), onde é possível notar que as falhas da segmentação nas extremidades da avenida
foram mínimas.
A Figura 45 mostra o pior caso obtido na geração do polígono, onde foi
obtida a medida-F de 71,65%. Apesar da segmentação da imagem ter classificado parte
da rua adjacente a de interesse e algumas regiões que não são asfalto como amostras
positivas, este erro não influenciou o resultado final do polígono, visto que erros em
posições intermediárias da rua não afetam significativamente o processo de geração.
Figura 45. Pior caso da geração do polígono (área de interesse em vermelho)
O principal motivo da diminuição da medida-F foi a falha na segmentação
da porção superior da rua, que pode ser observado com mais detalhes na Figura 46. A
85
sombra do poste de energia do lado esquerdo causa uma falha na segmentação
localizada na região mais superior da ortofoto, que por sua vez causa um erro no
polígono gerado.
Figura 46. Falhas em destaque da segmentação da imagem e geração do polígono
O fenômeno acontecido na Figura 46 exibe a região de maior sensibilidade
do método. O algoritmo que gera o polígono procura as extremidades da rua na imagem
segmentada, e um erro na segmentação desta região causa uma queda mais brusca na
medida-F do polígono que é gerado.
5.3 Resultado do Georreferenciamento de Ruas e Avenidas
Como no georreferenciamento do polígono é realizada uma conversão de
UTM para coordenadas geográficas, foi medido o erro da classe CoordinateConversion
adaptada para manipular dados utilizando o datum SAD-69.
Para estimar o erro na conversão de UTM para lon/lat, utilizou-se a extensão
espacial PostGIS, versão 1.5.1, do banco de dados PostgreSQL na versão 8.4, o site
86
speciesLink (speciesLink, [s.d]) que utiliza o software CS2CS (PROJ.4, 2008) e a
própria classe CoordinateConversion adaptada.
De posse das coordenadas de pontos das ortofotos em UTM, foi realizada a
conversão para o sistema de coordenadas geográficas com uso do PostGIS, speciesLink
e da classe CoordinateConversion adaptada. Com as coordenadas convertidas, foi
calculado o erro médio da longitude e latitude utilizando como referencial o PostGIS e o
site speciesLink. De posse do erro médio de cada coordenada, utilizou-se o PostGIS
para calcular a distância entre um ponto referencial e outro ponto com o erro médio
obtido em cada eixo.
Referência Erro médio na
longitude (º) Erro médio na
latitude (º) Erro médio do ponto
(metros)
PostGIS 1.5.1
5,56332 x 10-9
7,38885 x 10-6
1,18
speciesLink 7,76074 x 10-9
8,07325 x 10-6
1,29
Quadro 11. Erro estimado no georreferenciamento das ruas e avenidas
O Quadro 11 traz os resultados obtidos no experimento. O erro no
georreferenciamento foi menor quando foi tomada como base a conversão realizada
pelo PostGIS. Por ser uma extensão geoespacial bastante utilizada e robusta, a
confiabilidade na conversão em relação ao programa utilizado no site speciesLink é
maior, o que favorece o resultado do georreferenciamento realizado neste trabalho.
Foi estimado um erro de 1,18 metros quando considerada como correta a
conversão do PostGIS e 1,29 metros quando utilizado o site speciesLink como
referência. Conclui-se que cada vértice da rua ou avenida tem um erro médio associado
de 1,18 metros ou 1,28 metros em qualquer direção. Considerando a largura e extensão
das ruas e avenidas, este é um erro aceitável.
87
A Figura 47 exibe o resultado do georreferenciamento de uma avenida da
cidade de Aracaju utilizando 2 camadas do Google Maps (Google, [s.d]) no mapa
plotado. Em (a) e (b) é exibida a avenida no mapa que utiliza as camadas do Google
Maps e em (c) a ortofoto segmentada que foi georreferenciada. Nota-se que apenas o
lado direito da avenida foi georreferenciado neste caso, o que pode ser visualizado em
(a) e (b).
Figura 47. Resultado do georreferenciamento de uma avenida
88
Vale ressaltar ainda que pode haver distorções entre a avenida
georreferenciada e a camada de visualização escolhida, já que o Google Maps utiliza o
datum planimétrico WGS-84 em sua projeção e este fator não foi tratado na exibição do
mapa.
5.4 Considerações Finais
Observando os resultados obtidos com a aplicação do método proposto para
o georreferenciamento de ruas e avenidas, percebe-se que é possível automatizar o
processo do georreferenciamento de objetos. Os resultados sumarizados das fases de
segmentação da imagem e geração do polígono são mostrados no Quadro 12.
Fase Taxa de detecção Precisão Medida-F
Segmentação 84,98% 91,37% 85,73%
Geração do polígono 88,42% 93,79% 91,03%
Quadro 12. Resumo dos resultados na imagem
A geração do polígono apresentou métricas melhores que a segmentação,
pois alguns erros na fase de segmentação não afetam o resultado final do polígono,
como elucidado na seção 5.2.1.
O resultado da fase do georreferenciamento do polígono pode ser analisado
no Quadro 11 e visto na Figura 47. Entretanto, o método de georreferenciamento
apresentou um erro médio de 1,18 metros em cada vértice da região segmentada. Com
uso do dispositivo móvel iPaq 610c Business Navigator, da empresa HP, equipado com
o Sistema Operacional Windows Mobile 6 e um receptor GPS, o erro, no melhor caso,
foi de 2,5 metros, maior que o erro do método proposto.
89
Vale ressaltar que apesar do segmentador neural proposto por Cardoso
(2009) não conseguir segmentar asfalto com uma medida-F aceitável, é possível que
com a realização de um treinamento mais elaborado, ele também seja eficiente na
detecção deste material.
O método proposto neste trabalho foi capaz de georreferenciar ruas e
avenidas a partir do reconhecimento de imagens, sem necessidade da realização de
coletas em campo com dispositivos de GPS.
6 CONCLUSÃO
Neste trabalho, foi apresentada uma solução para a automatização do
georreferenciamento de objetos a partir do reconhecimento de imagens, mais
especificamente ortofotos.
Através do método proposto, principal objetivo e contribuição desta
monografia, o georreferenciamento de ruas e avenidas passa a ser uma tarefa mais
simples, rápida e barata.
É possível afirmar que o objetivo central do trabalho foi atingido, já que: (i)
os resultados obtidos pela implementação do método proposto comprovam a capacidade
na automatização do georreferenciamento de ruas e avenidas em SIGs a partir do
reconhecimento de imagens; (ii) o método proposto pode ser expandido para o
georreferenciamento de outros objetos, com uso de segmentadores apropriados e
adaptação na fase da geração do polígono; e (iii) a eficácia do georreferenciamento foi
corroborado pelos resultados obtidos.
90
Também figuram como contribuições desta monografia o desenvolvimento
de uma aplicação Web para automatizar o georreferenciamento de ruas e avenidas, bem
como possibilitar a visualização dos objetos já georreferenciados.
Dentre os pontos positivos da proposta apresentada neste trabalho, destaca-
se o fato dela não exigir que o usuário tenha conhecimento prévio sobre técnicas de
segmentação e georreferenciamento.
TRABALHOS FUTUROS
Apesar de todos os objetivos do trabalho terem sido alcançados, ainda há
uma série de propostas de trabalhos futuros que agregarão muito valor ao método aqui
apresentado.
O primeiro destes trabalhos seria adaptar a segmentação para trabalhar com
mais de uma semente, ocasionando um aumento na medida-F, principalmente em
materiais com grande variação de cor. Isto possibilitará que ruas ou avenidas com
asfalto pouco homogêneo possam ser georreferenciadas com melhores resultados.
Outra sugestão de trabalho futuro é o estudo mais aprofundado de métodos
para a geração de polígonos a partir das imagens segmentadas, com intuito de permitir
que ruas e avenidas que em algum momento de sua extensão possuam curvas sejam
georreferenciadas com sucesso.
A expansão dos tipos de objetos georreferenciados será de grande valia para
o método proposto. O georreferenciamento de florestas, por exemplo, permitirá criar um
software capaz de identificar desmatamento ilegal, o que é muito importante em tempos
onde a preservação ambiental é uma prioridade.
91
Uma melhoria é realizar o georreferenciamento sem uso da transformação
de coordenadas, ou através de um método mais preciso que reduza o erro. O aumento na
precisão permitirá que o método proposto seja empregado para georreferenciar objetos
que necessitem de grande precisão.
Por fim, criar uma aplicação na qual o usuário possa apontar no mapa, ou
imagem, a região que deseja georreferenciar, o que tornará mais ágil e intuitivo para o
usuário.
92
REFERÊNCIAS
Amarante, Dora. 2008. COORDENADAS GEOGRÁFICAS. GEOGRAFIA GERAL &
BÍBLICA. [Online] Abril 01, 2008. [Citado: Junho 04, 2010.]
http://geografiageralebiblica.blogspot.com/2008/04/coordenadas-geogrficas.html.
Andrade, Guilherme Agostinho Pletikoszits de, et al. 2007. Desenvolvimento de
aplicativos de geoprocessamento para Planos Diretores Municipais em Minas Gerais,
Brasil. Anais XIII Simpósio Brasileiro de Sensoriamento Remoto, Florianópolis, Brasil.
2007, INPE, p. 5075-5082.
Araribóia, G. 1988. Inteligência Artificial: Um curso prático. Rio de Janeiro : Livros
Técnicos e Científicos, 1988. ISBN 8521605319.
ArcGIS. 2009. ArcGIS Desktop Help 9.3 - World files for raster datasets. Web-based
Help | ArcGIS Resource Centers. [Online] Environmental Systems Research Institute,
Novembro 12, 2009. [Citado: Maio 12, 2010.]
http://webhelp.esri.com/arcgisdesktop/9.3/index.cfm?TopicName=World_files_for_rast
er_datasets.
Ballone, Geraldo José. 2006. Tratamento da Depressão. PsiqWeb - Portal de
Psiquiatria. [Online] Janeiro 31, 2006. [Citado: Abril 06, 2010.]
http://virtualpsy.locaweb.com.br/index.php?art=209&sec=39.
Barbosa, Cláudio C. F. 1997. Álgebra de mapas e suas aplicações em sensoriamento
remoto e geoprocessamento. Ministério da Ciência e Tecnologia. [Online] 1997.
[Citado em: 21 de abril de 2009.] http://www.obt.inpe.br/pgsere/1997-
Barbosa_C_C_F/barbosa1997.pdf.
Barreto, Jorge M. 2002. Introdução às Redes Neurais Artificiais. [Online] Maio 16,
2002. [Citado: Fevereiro 09, 2010.] www.inf.ufsc.br/~barreto/tutoriais/Survey.pdf.
Beale, Russell e Jackson, Tom. 1990. Neural Computing - An Introduction. Bristol :
Institute of Physics Publishing, 1990. ISSN 0852742622.
93
Belman, R. E. 1978. An Introductionto Artificial Intelligence: Can Computers Think?
San Francisco : Body & Fraser Publishing Company, 1978.
Camara, G, et al. 1996. SPRING: Integrating remote sensingand GIS by object-
oriented data modelling. [Online] 1996. [Citado: junho 24, 2009.]
http://www.dpi.inpe.br/geopro/trabalhos/spring.pdf.
Câmara, Gilberto e Monteiro, Antônio Miguel Vieira. 2001. Conceitos Básicos da
Ciência da Geoinformação. Introdução à Ciência da Geoinformação. [Online] 2001.
[Citado: Abril 14, 2009.] http://www.dpi.inpe.br/gilberto/livro/introd/cap2-
conceitos.pdf.
Câmara, Gilberto. 2005. Representação computacional de dados geográficos. Bancos
de Dados Geográficos. [Online] 2005. [Citado em: 31 de março de 2009.]
http://www.dpi.inpe.br/livros/bdados/cap1.pdf.
Câmara, Gilberto, Davis, Clodoveu e Monteiro, Antônio Miguel Vieira. 2001.
Geoprocessamento Teoria e Aplicacoes. Introdução à Ciência da Geoinformação.
[Online] 2001. [Citado: Abril 14, 2009.] http://www.dpi.inpe.br/gilberto/livro/introd/.
Câmara, Gilberto, et al. 2005. Bancos de Dados Geográficos. Curitiba : MundoGEO,
2005.
Cardoso, Fernando Henrique Bezerra. 2009. Um Método Automático para o Ajuste
de Segmentadores de Imagens Baseados em Informação de Textura e Cor. [Online]
Agosto 13, 2009. [Citado: Janeiro 26, 2010.]
http://pixel.dsc.ufcg.edu.br/~fernando/wiki/lib/exe/fetch.php?id=mestrado&cache=cach
e&media=completa.pdf.
—. 2009. Um Método Automático para o Ajuste de Segmentadores de Imagens
Baseados em Informação de Textura e Cor. [Online] Agosto 13, 2009. [Citado: Janeiro
26, 2010.]
http://pixel.dsc.ufcg.edu.br/~fernando/wiki/lib/exe/fetch.php?id=mestrado&cache=cach
e&media=completa.pdf.
Cazella, Sílvio César, et al. 2006. Lógica Fuzzy. Universidade do Vale do Rio dos
Sinos. [Online] Abril 12, 2006. [Citado: Fevereiro 04, 2010.]
http://www.inf.unisinos.br/~cazella/dss/200601/lf.pdf.
94
Charniak, Eugene e McDermott, Drew. 1985. Introduction to Artificial Intelligence.
Massachusetts : Addison-Wesley, 1985. ISBN 9780201119459.
Cryer, Brian. [s.d]. All about the .tfw file extension. Brian Cryer's Web Resources.
[Online] [s.d]. [Citado: Maio 12, 2010.] http://www.cryer.co.uk/file-types/t/tfw.htm.
Curso Objetivo. [s.d]. Projeções Cartográficas. Curso Objetivo. [Online] [s.d]. [Citado:
Maio 2010, 21.] http://www.curso-
objetivo.br/vestibular/roteiro_estudos/projecoes_cartograficas.aspx.
Druck, Suzana, et al. 2004. Análise Espacial de Dados Geográficos. Brasília :
EMBRAPA, 2004. ISBN: 85-7383-260-6.
—. 2004. Análise Espacial de Dados Geográficos. [Online] 2004. [Citado: Abril 23,
2009.] http://www.dpi.inpe.br/gilberto/livro/analise/.
ESRI. 2000. ArcGIS: A Complete Integrated System. [Online] 2000. [Citado em: 24 de
junho de 2009.] http://www.esri.com/software/arcgis/.
Folador, Benice, Gomes, Tayoná Cristina e Pereira, Helene. 2008.
Georreferenciamento de Imóveis Rurais. Mundo Geo. [Online] 2008. [Citado: Março
16, 2010.] http://www.mundogeo.com.br/revistas-interna.php?id_noticia=13536.
Gaede, Volker e Günther, Oliver. 1997. Multidimensional access methods. ACM
Computing Surveys. 1997, Vol. 30.
Geoprocessamento para Linux. 2010. Criar grid de coordenadas em um mapa no
gvSIG 1.9 « Geoprocessamento para Linux. Geoprocessamento para Linux. [Online]
Janeiro 11, 2010. [Citado: Junho 2010, 04.]
http://geoparalinux.wordpress.com/2010/01/11/criar-grid-de-coordenadas-em-um-mapa-
no-gvsig-1-9/.
Gome, J e Velho, L. 1995. Abstraction Paradigms for Computer Graphics. The Visual
Computer. 1995, Vol. 11, 5, pp. 227-239.
Gonzalez, Rafael C. e Woods, Richard E. 2000. Processamento de Imagens Digitais.
São Paulo : Edgard Blücher, 2000.
—. 2000. Processamento de Imagens Digitais. : Edgard Blücher, 2000.
95
Google. [s.d]. Google Maps. [Online] Google, [s.d]. [Citado: Março 5, 2010.]
http://www.google.com.br/maps.
—. 2010. Guia do Usuário do Google Earth. Google Earth. [Online] Google, Março 25,
2010. [Citado: Maio 2010, 21.] http://earth.google.com/intl/pt-
BR/userguide/v4/ug_importdata.html.
Governo Federal. [s.d]. A Comunidade de Software Livre do Governo Federal.
[Online] [s.d]. [Citado em: 6 de agosto de 2009.]
http://www.softwarelivre.gov.br/comunidade-no-governo.
Haugeland, J. 1985. Artificial Intelligence: The Very Idea. Cambridge : MIT Press,
1985.
Haykin, Simon. 1999. Neural Network: A comprehensive foundation 2nd ed. Upper
Saddle River : Prentice Hall, 1999. ISBN 0-13-273350-1.
Jr., Clodoveu Davis e Queiroz, Gilberto Ribeiro de. 2005. Métodos de acesso para
dados espaciais. [book auth.] Gilberto Câmara, Clodoveu Davis, Lúbia Vinhas, Gilberto
Ribeiro de Queiroz Marco Casanova. Bancos de Dados Geográficos. Curitiba :
MundoGEO, 2005.
Junges, Luís Carlos Dill. 2006. Introdução a Lógica Fuzzy. S2i - Sistemas Industriais
Inteligentes - UFSC. [Online] Novembro 13, 2006. [Citado: Favereiro 26, 2010.]
http://s2i.das.ufsc.br/tikiwiki/apresentacoes/logica-fuzzy.pdf.
Kishimoto, André. 2004. Inteligência Artificial em Jogos Eletrônicos. [Online] 2004.
[Citado: Março 06, 2010.]
http://www.programadoresdejogos.com/trab_academicos/andre_kishimoto.pdf.
Kurzweil, R. 1990. The Age of Intelligent Machines. Cambridge : MIT Press, 1990.
Maia, Leticia Toledo. 2007. Um estudo sobre aplicação de técnicas de inteligência
artificial e engenharia de software à construção de um sistema de supervisão e controle.
UnB. [Online] 2007. [Citado: Março 05, 2010.]
http://repositorio.bce.unb.br/bitstream/10482/1453/1/Dissert_Leticia%20Toledo%20Ma
ia.pdf.
96
Medeiros, José Simeão de. 1999. Bancos de Dados Geográficos e Redes Neurais
Artificiais: Tecnologias de Apoio à Gestão de Território. [Online] Agosto 27, 1999.
[Citado: Fevereiro 09, 2010.] http://www.dpi.inpe.br/teses/simeao/.
Microsoft. [s.d]. Color. MSDN: Microsoft Development. [Online] Microsoft, [s.d].
[Citado: Fevereito 30, 2010.] http://msdn.microsoft.com/en-us/library/aa511283.aspx.
Moik, Johannes G. 1980. Digital processing of remotely sensed images . Scientific and
Technical Information Branch, National Aeronautics and Space Administration
(NASA). 1980, Vol. vii.
Nikolopoulos, Chris. 1997. Expert Systems. New York : CRC Press, 1997. ISBN
0824799275.
Oliveira, Robert Anderson Nogueira de. 2009. Introdução ao PostGIS. Seminfo.
Aracaju : s.n., 2009. 6.
OpenGIS. 1994. Open Geospatial Consortium, Inc. [Online] 1994. [Citado em: 31 de
março de 2009.] http://www.opengeospatial.org.
PostGis. [s.d]. Chapter 4. Using PostGIS: Data Management and Queries. PostGIS.
[Online] PostGis, [s.d]. [Citado: Maio 12, 2010.] http://postgis.refractions.net.
PostGIS. [s.d]. PostGIS Manual. [Online] [s.d]. [Citado em: 31 de março de 2009.]
http://postgis.refractions.net/documentation/manual-1.3/.
PostgreSQL. [s.d]. PostgreSQL Manual. [Online] [s.d]. [Citado em: 31 de março de
2009.] http://www.postgresql.org/docs/8.3/static/index.html.
PROJ.4. 2008. cs2cs - cartographic coordinate system filter. PROJ.4 - Cartographic
Projections Library. [Online] Edgewall Software, Maio 16, 2008. [Citado: Maio 20,
2010.] http://trac.osgeo.org/proj/wiki/man_cs2cs.
Russel, Stuart e Norvig, Peter. 2004. Inteligência Artificial. Rio de Janeiro : Campus,
2004. ISBN 85-352-1177-2.
Saldanha, Marcus F. S. e Freitas, Corina da Costa. 2009. Segmentação de Imagens
Digitais: Uma Revisão. [Online] 2009. [Citado: Fevereiro 4, 2010.]
www.lac.inpe.br/cap/arquivos/pdf/P19.pdf.
97
Salkosuo, Sami. 2007. Coordinate conversions made easy. IBM - United States.
[Online] IBM, Agosto 28, 2007. [Citado: Maio 12, 2010.]
http://www.ibm.com/developerworks/java/library/j-coordconvert/.
Schamel, Jay. 2007. The World's Second Computing Architecture: The Brain.
Department of Computer Science - University of Alaska Fairbanks. [Online] University
of Alaska Fairbanks, Outubro 10, 2007. [Citado: Fevereiro 08, 2010.]
http://www.cs.uaf.edu/2007/fall/cs441/proj1notes/schamel/.
Scott, Davis. 2007. GIS For Web Developers: Adding Where to Your Web Application.
s.l. : The Pragmatic Programmers LLC, 2007.
Sellitto, Miguel Afonso. 2002. Inteligência Artificial: uma aplicação em uma indústria
de processo contínuo. Scielo. [Online] 2002. [Citado: Março 06, 2010.]
http://www.scielo.br/scielo.php?script=sci_arttext&pid=S0104-
530X2002000300010&lng=en&nrm=iso. ISSN 0104-530X.
Silva, Renato Afonso Cota. 2005. Inteligência Artificial Aplicada a Ambientes de
Engenharia de Software - Uma visão geral. [Online] Agosto 03, 2005. [Citado: Março
06, 2010.] www.dcc.ufla.br/infocomp/artigos/v4.4/art04.pdf.
speciesLink. [s.d]. speciesLink: Dados e ferramentas: conversor. speciesLink: Sistema
de Informação Distribuído para Coleções Biológicas. [Online] speciesLink, [s.d].
[Citado: Maio 12, 2010.] http://splink.cria.org.br/conversor.
Stevens, S. S. 1946. On the Theory of Scales of Measurement. [Online] 1946. [Citado
em: 23 de abril de 2009.] http://courses.essex.ac.uk/gv/gv200/stevensarticle.pdf.
Teixeira, João de Fernandes. 1990. O Que é Inteligência Artificial. : Brasiliense,
1990. ISBN: 8511012303.
Tuceryan, Mihran e Jain, Anil K. 1999. Texture Analysis. [book auth.] C. H. Chen, L.
F. Pau and P. S. P. Wang. Handbook of pattern recognition & computer vision (2nd
Edition). River Edge : World Scientific Publishing Co, 1999.
University of Texas. 2006. BIO365- About Neuroscience. The University of Texas at
Austin - Web Central. [Online] 2006. [Citado: Fevereiro 09, 2010.]
http://www.utexas.edu/courses/bio365r/documents/about/about.php.
98
Vasconcelos, Rafael Oliveira, Oliveira, Robert Anderson Nogueira de e Silva,
Fábio Soares. 2010. OL4JSF: Uma biblioteca de componentes para elaboração de
aplicações geoespaciais. XXIV Congresso Brasileiro de Informática. 2010.
Venturieri, Adriano. 1996. Segmentação de imagens e lógica nebulosa para
treinamento de uma rede neural artificial na caracterização do uso da terra na região de
Tucuruí (PA). Instituto Nacional de Pesquisas Espaciais. INPE-6645-TDI/622, 1996.
Vieira, Valci Francisco e Zamparetti, Adilson de Freitas. 2008. Um Método para o
Georreferenciamento dos Vinhedos. Mundo Geo. [Online] 2008. [Citado: Março 16,
2010.] http://www.mundogeo.com.br/revistas-interna.php?id_noticia=13535.
WebGIS. [s.d]. Usando PostGIS. [Online] [s.d]. [Citado em: 12 de junho de 2009.]
http://www.webgis.com.br/postgis/docs/.
Wikipedia. 2009. Quadricromia. Wikipedia. [Online] Maio 5, 2009. [Citado: Março 10,
2010.] http://pt.wikipedia.org/wiki/Quadricromia.
Winston, Patrick Henry. 1992. Artificial Intelligence. Massachusets : Addison-
Wesley, 1992. ISBN 0201533774.
Yong, Xia, Feng, Dagan e Rongchun, Zhao. 2004. Optimal selection of image
segmentation algorithms based on performance prediction. ACM International
Conference Proceeding Series. 2004, Vol. 100.