“Mapas Auto-organizáveis com Estrutura Variante doTempo para Reconstrução de Superfícies”
Por
Renata Lucia Mendonça Ernesto do Rêgo
Tese de Doutorado
Universidade Federal de Pernambuco
www.cin.ufpe.br/~posgraduacao
RECIFE, MARÇO/2013
Universidade Federal de Pernambuco
Centro de InformáticaPós-graduação em Ciência da Computação
Renata Lucia Mendonça Ernesto do Rêgo
“Mapas Auto-organizáveis com Estrutura Variante doTempo para Reconstrução de Superfícies”
ESTE TRABALHO FOI APRESENTADO À PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO DOCENTRO DE INFORMÁTICA DA UNIVERSIDADEFEDERAL DE PERNAMBUCO COMO REQUISITOPARCIAL PARA OBTENÇÃO DE GRAU DE DOUTOREM CIÊNCIA DA COMPUTAÇÃO.
Orientador: Aluizio Fausto Ribeiro Araujo
RECIFE, MARÇO/2013
Catalogação na fonteBibliotecária Jane Souto Maior, CRB4-571
Rêgo, Renata Lucia Mendonça Ernesto do Mapas auto-organizáveis com estrutura variante do tempo para reconstrução de superfícies /Renata Lucia Mendonça Ernesto do Rego. - Recife: O Autor, 2013. xx, 167 p.: fig., tab.
Orientador: Aluizio Fausto Ribeiro Araujo. Tese (doutorado) - Universidade Federal de Pernambuco. CIn, Ciência da Computação, 2013.
Inclui bibliografia. 1. Inteligência Computacional. 2. Redes Neurais Artificiais. I. Araujo, Aluizio Fausto Ribeiro (orientador). II. Título.
006.3 CDD (23. ed.) MEI2013 – 076
Tese de Doutorado apresentada por Renata Lucia Mendonça Ernesto do Rêgo à Pós-Graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco, sob o título “Mapas Auto-organizáveis com Estrutura Variante no Tempo para Reconstrução de Superfícies” orientada pelo Prof. Aluizio Fausto Ribeiro Araújo e aprovada pela Banca Examinadora formada pelos professores:
______________________________________________ Profa. Veronica Teichrieb Centro de Informática / UFPE
______________________________________________ Prof. Tsang Ing Ren Centro de Informática / UFPE
_______________________________________________ Prof. George Darmiton da Cunha Cavalcanti Centro de Informática / UFPE
_________________________________________________ Prof. Adrião Duarte Dória Neto Deptº de Engenharia de Computação e Automação / UFRN
_________________________________________________ Prof. Luiz Marcos Garcia Goncalves Deptº de Engenharia de Computação e Automação / UFRN
Visto e permitida a impressão.Recife, 11 de março de 2013
___________________________________________________Profa. Edna Natividade da Silva BarrosVice-Coordenadora da Pós-Graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco.
Dedico esta tese a toda a minha família, amigos, colegas eprofessores que me deram o apoio necessário para chegar
até aqui. Especialmente ao meu avô amado, WandeveldMartins Ramos.
Agradecimentos
Gostaria a agradecer às seguintes pessoas: Meus pais, João Ernesto e Ivone Rêgo, porsempre me apoiarem em todas as situações, a meu irmão, Ernesto Heráclio, por suaamizade, a meus tios, Vera Lúcia e João Alves, por me receberem como filha em suafamília, a meu primo João Calvino, que considero um irmão, e a toda minha família.Meu orientador, professor e amigo, Aluizio Araujo, que me orienta desde o mestrado esem o qual esta tese não seria possível. Aos professores Silvio Melo, Marcelo Walter eRenata Souza, pelo apoio e por ministrarem com dedicação suas disciplinas. Aos mem-bros da banca avaliadora: Verônica Teichrieb, Tsang Ing Ren, George Darmiton, AdriãoDuarte, Luiz Marcos, pelas valiosas contribuições. Aos colegas de laboratório: Hansen-clever Bassani, Flavia Araujo, Vilson Dalle Mole, Orivaldo Santana, Daniel Filgueiras,Paulo Henrique, Cícero Garozi, André Tiba, Cleice Souza, Monique Soares e ThiagoRocha, pelas discussões que tivemos e as idéias que resultaram destas discussões, alémdos momentos de descontração. Aos pesquisadores do grupo Geometrica do INRIASophia Antipolis, em especial Dr. Jean-Daniel Boissonnat, Dr. Ramsay Dyer e Dr. Da-vid Bommes, por terem me recebido em seu grupo, pela pesquisa de qualidade que têmdesenvolvido e que inspiraram este trabalho, pelo tempo que dedicaram me ajudando aaprimorar minha pesquisa de doutorado. A colega e amiga Renata Thomaz, doutorandana PUC Rio de Janeiro, pelo seu apoio enquanto estávamos no INRIA. Aos colegas doIFPE que apoiaram minha liberação durante seis meses para o INRIA. A todos os funci-onários do CIn/UFPE: Maria Lilia, Neide, Maria do Socorro e Ivanilda (na secretaria),Edilene, Rosali, Inácia (na recepção), Melo, Rodrigo, Julio (na oficina), Mario e Nadja(no suporte ao usuário), Suilan, Roberto, Maria, Hilda (na limpeza), e todos os demais.
vii
Resumo
O processo de aprendizagem de variedades tem por objetivo recuperar informações so-
bre uma variedade M não conhecida a partir de um conjunto de pontos L amostrados
em M. Neste contexto, sub-complexos da triangulação de Delaunay tem sido utiliza-
dos para construir uma aproximação fiel de M a partir de L. Particularmente, provou-se
que o complexo Delaunay restrito é uma boa aproximação, tanto topológica quanto geo-
metricamente, de curvas planas ou superfícies no espaço 3D, assumindo que a amostra
disponível é suficientemente densa (Amenta e Bern, 1998). Desde então, ela tem sido
utilizada por diferentes métodos de reconstrução de superfícies (Amenta et al., 2001;
Boissonnat e Oudot, 2006; Dey e Giesen, 2001; Dey e Goswami, 2006, 2003).
O aprendizado Hebbiano Competitivo (Competitive Hebbian Learning-CHL) (Mar-
tinetz e Schulten, 1994) é um método simples e elegante para aprender a topologia de
uma variedade a partir de pontos amostrados, que tem sido amplamente utilizado por va-
riantes do Mapa Auto-organizável com a habilidade de aprender topologias. Martinetz e
Schulten (1994) provou que o CHL produz um subconjunto da triangulação de Delaunay.
Infelizmente, o CHL só é capaz de produzir grafos, e portanto não pode ser diretamente
empregado para produzir malhas de triângulos.
Os resultados de Martinetz e Schulten (1994) deram origem a trabalhos relacionados
no campo da geometria computacional. Particularmente, De Silva e Carlsson (2004)
introduziram o complexo de testemunhas, que pode ser considerado uma aproximação
da triangulação Delaunay restrita. O complexo de testemunhas generaliza o grafo de
preservação de topologia gerado com o CHL, i.e. ele é um complexo simplicial em vez
de um grafo. De Silva e Carlsson (2004) também apresentou definições relaxadas para
centros Delaunay e testemunhas. E Boissonnat et al. (2011) mostrou que, sob determi-
nadas condições, o complexo Delaunay relaxado é equivalente ao complexo Delaunay
restrito.
Neste contexto, investigamos a capacidade dos Mapas Auto-organizáveis com es-
trutura variante no tempo na solução do problema de reconstrução de superfícies. Em
seguida, desenvolvemos algoritmos baseados em aprendizado para reconstrução de su-
perfícies a partir de nuvens de pontos não estruturados, que consistem de Mapas Auto-
organizáveis combinando métodos de aprendizado para selecionar os vértices da malha,
e métodos de aprendizado de topologia para geração de complexos simpliciais. Basica-
mente os métodos de aprendizado de topologia introduzidos nesta tese são variantes do
CHL inspirados no complexo de testemunhas e no complexo Delaunay relaxado, com
a adição de algumas heurísticas para tratar problemas observados em situações práticas.
ix
Outros aspecto positivos do uso de Mapas Auto-organizáveis para reconstrução de su-
perfícies são a habilidade para lidar com dados ruidosos e para produzir malhas com
diferentes resoluções.
Os resultados experimentais mostram que as soluções propostas foram capazes de
produzir malhas que são boas aproximações das superfícies alvo. Tais malhas foram
avaliadas de acordo com diferentes métricas: distância de Hausdorff, distribuição de vi-
zinhança, regularidade dos polígonos, ângulo minimo. Os resultados foram comparados
com outros métodos de reconstrução de superfícies para apontar as vantagens e desvan-
tagens das soluções propostas. Na maioria dos casos as soluções propostas apresentaram
melhores resultados com respeito às métricas consideradas. Os experimentos também
indicam que as soluções propostas são adequadas para reconstrução de variedades em
dimensões mais altas.
Palavras-chave: mapas auto-organizáveis, redes neurais, reconstrução de superfície,
aorendizado de topologia, aprendizado de variedades, triangulação Delaunay, complexo
de testemunhas. witnesses complexes.
x
Abstract
The manifold learning process aims at retrieving some information about an unknown
manifold M from a given set of sample points L drawn from M. In this context, subcom-
plexes of the Delaunay triangulation have been used to build a faithful approximation
of M from L. Particularly, the restricted Delaunay complex was shown to provide good
topological and geometric approximation of planar curves or surfaces in 3D-space, as-
suming a sufficiently dense sampling (Amenta and Bern, 1998). Since then, it has been
used by different surface reconstruction methods (Amenta et al., 2001; Boissonnat and
Oudot, 2006; Dey and Giesen, 2001; Dey and Goswami, 2006, 2003).
The Competitive Hebbian Learning (CHL) (Martinetz and Schulten, 1994) is a sim-
ple and elegant method for learning the topology of a manifold from sample points, that
has been used widely used by variants of the self-organizing map with the topology le-
arning ability. Martinetz and Schulten (1994) proved that CHL produces a subset of
the Delaunay triangulation. Unfortunately, CHL is only capable of producing graphs,
and thus it cannot be directly applied to produce triangular meshes to represent target
surfaces.
The results of Martinetz and Schulten (1994) have given rise to related studies in the
field of computational geometry. Particularly, De Silva and Carlsson (2004) introduced
the Witness Complexes, which can be regarded as approximations to the restricted De-
launay triangulation. The Witness complex generalizes the topology preserving graphs
generated with the Competitive Hebbian Learning, i.e. it is a simplicial complex rather
than a graph. De Silva and Carlsson (2004) also presented relaxed definitions for Delau-
nay centers and witnesses. And Boissonnat et al. (2011) showed that, under conditions,
the relaxed Delaunay complex is equivalent to the restricted Delaunay complex.
In this context, we investigated the capability of self-organizing maps with a time
varying structure to solve the surface reconstruction problem. Then, we developed
learning-based algorithms for surface reconstruction from unstructured points clouds,
which consist of self-organizing maps combining learning methods for selecting vertices
for the mesh, and topology learning methods to generate the resulting simplicial com-
plexes. Basically, the topology learning methods introduced in this thesis, are variants
of the CHL inspired on the Witness complexes and the Relaxed Delaunay complexes,
with the addition of some heuristics to overcome issues we faced in practical situations.
Other positive aspects of using Self-organizing maps for surface reconstruction are the
ability do deal with noisy data and to produce meshes with different resolutions.
The experimental results show that the proposed solutions could produce meshes
xi
which are good approximations of the target surfaces. Such meshes were evaluated
according to different metrics: Hausdorff distance, valence distribution, polygon regula-
rity, and minimum angles. The results were compared with other surface reconstruction
methods to point out the advantages and disadvantages of the proposed solutions. In
most cases, the proposed solutions presented better results regarding the metrics consi-
dered. The experiments also indicate that the proposed solutions are also suitable for
manifold reconstruction in higher dimensions.
Keywords: self-organizing maps, neural networks, surface reconstruction, topology
learning, manifold learning, Delaunay triangulation, witnesses complexes.
xii
Sumário
1 Introdução 1
2 Fundamentos de Geometria Computacional 9
2.1 Definições Básicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2 Diagramas de Voronoi e Triangulações de Delaunay em Superfícies . . 17
2.3 Complexo Delaunay e Complexo de Testemunhas . . . . . . . . . . . . 23
3 Mapas Auto-organizáveis com Estrutura Variante no Tempo 31
3.1 Mapas Auto-organizáveis com Estrutura Variante no Tempo . . . . . . 33
3.2 Estruturas de Células Crescentes - GCS . . . . . . . . . . . . . . . . . 37
3.3 Redes de Representação de Topologia - TRN . . . . . . . . . . . . . . 42
3.4 Gas Neural Crescente - GNG . . . . . . . . . . . . . . . . . . . . . . . 44
3.5 Mapa Topológico Instantâneo - ITM . . . . . . . . . . . . . . . . . . . 46
4 Modelos SOM-TVS para Reconstrução de Superfícies 51
4.1 Gás Neural Estendido . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.1.1 Criação de Variedades de Dimensão 2 . . . . . . . . . . . . . . 54
4.2 Malha Neural . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.3 Abordagem de Aprendizado Adaptativa para Reconstrução de Superfícies. 59
4.4 Growing Self-organizing Surface Map . . . . . . . . . . . . . . . . . . 61
5 Solução Proposta 71
5.1 Growing Self-reconstruction Maps (GSRM) . . . . . . . . . . . . . . . 74
5.1.1 Parâmetros de Treinamento e Inicialização do Mapa . . . . . . 74
5.1.2 Competição Entre os Nodos . . . . . . . . . . . . . . . . . . . 75
5.1.3 Adaptação dos Vetores de Pesos . . . . . . . . . . . . . . . . . 75
5.1.4 Atualização de Topologia . . . . . . . . . . . . . . . . . . . . 76
Aprendizado Hebbiano Competitivo Estendido . . . . . . . . . 76
Remoção de Arestas e Faces . . . . . . . . . . . . . . . . . . . 79
5.1.5 Atualização de Nodos . . . . . . . . . . . . . . . . . . . . . . 81
5.1.6 Critério de Parada . . . . . . . . . . . . . . . . . . . . . . . . 82
5.1.7 Aprendizado de Topologia . . . . . . . . . . . . . . . . . . . . 82
5.1.8 Pós-processamento . . . . . . . . . . . . . . . . . . . . . . . . 83
5.1.9 Algoritmo de Treinamento do GSRM . . . . . . . . . . . . . . 84
xiii
5.2 GSRM baseado em Complexo de Testemunha e iDT . . . . . . . . . . 84
5.2.1 Parâmetros de Treinamento de Inicialização do Mapa . . . . . . 87
Fase de Ordenamento . . . . . . . . . . . . . . . . . . . . . . . 87
Fase de Reconstrução . . . . . . . . . . . . . . . . . . . . . . . 88
5.2.2 Competição entre Nodos . . . . . . . . . . . . . . . . . . . . . 88
Fase de Ordenamento . . . . . . . . . . . . . . . . . . . . . . . 88
Fase de Reconstrução . . . . . . . . . . . . . . . . . . . . . . . 88
5.2.3 Adaptação dos Vetores de Pesos . . . . . . . . . . . . . . . . . 88
5.2.4 Atualização de Topologia . . . . . . . . . . . . . . . . . . . . 88
Fase de Ordenamento . . . . . . . . . . . . . . . . . . . . . . . 89
Aprendizado de Topologia - Fase de Reconstrução . . . . . . . 90
5.2.5 Atualização de Nodos . . . . . . . . . . . . . . . . . . . . . . 93
5.2.6 Critério de Parada . . . . . . . . . . . . . . . . . . . . . . . . 93
5.2.7 Pós-processamento . . . . . . . . . . . . . . . . . . . . . . . . 94
5.2.8 Algoritmo de Treinamento do GSRM-iDT . . . . . . . . . . . . 94
5.3 GSRM-iDT com Tempo de Treinamento Reduzido . . . . . . . . . . . 95
5.4 GSRM - Relaxed Delaunay - GSRM-rD . . . . . . . . . . . . . . . . . 97
5.4.1 Parâmetros de Treinamento e Inicialização do Mapa . . . . . . 101
5.4.2 Competição entre os Nodos . . . . . . . . . . . . . . . . . . . 102
5.4.3 Adaptação dos Vetores de Pesos . . . . . . . . . . . . . . . . . 102
5.4.4 Atualização de Topologia . . . . . . . . . . . . . . . . . . . . 102
5.4.5 Atualização de Nodos . . . . . . . . . . . . . . . . . . . . . . 104
5.4.6 Critério de Parada . . . . . . . . . . . . . . . . . . . . . . . . 104
5.4.7 Pós-processamento . . . . . . . . . . . . . . . . . . . . . . . . 104
6 Experimentos e Resultados 107
6.1 GSRM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
6.2 GSRM-iDT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
6.3 Reconstrução de Estruturas Anatômicas com GSRM-iDT . . . . . . . . 123
6.4 GSRM-rD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
7 Discussões e Trabalhos Futuros 151
Referências Bibliográficas 159
xiv
Lista de Figuras
1.1 Pipeline de modelagem geométrica. . . . . . . . . . . . . . . . . . . . 2
2.1 Ilustrações de (a) mergulho e (b) imersão. Original em Dyer (2010). . . 12
2.2 Complexo Simplicial: (a) um exemplo; (b) um caso de não ocorrência. . 13
2.3 Ilustração de Diagrama de Voronoi e Triangulação de Delaunay em R2. 14
2.4 Ilustração de Dualidade entre (a) diagrama de Voronoi e (b) triangulação
de Delaunay. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.5 Aresta localmente Delaunay (eab) e não localmente Delaunay (ecd). . . 16
2.6 Malha de triângulos singular. . . . . . . . . . . . . . . . . . . . . . . . 18
2.7 Propriedade da circumesfera euclidiana vazia na Triangulação de Delau-
nay Restrita: Exemplo unidimensional (Figura baseada em (Dyer, 2010)). 20
2.8 (a) Testemunha Forte; (b,c) Testemunha fraca. . . . . . . . . . . . . . 26
2.9 (a) Centro Delaunay; (b) Centro Relaxado; (c) Centro Protegido. . . . . 28
4.1 Triangulação de bordas indesejadas na malha. (Figura reproduzida de
(Barhak, 2002)) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.2 Operação de divisão de vértice. Figura reproduzida de Ivrissimtzis et al.
(2003) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.3 Operação de Colapso de Aresta. Figura (a) reproduzida de Ivrissimtzis
et al. (2003) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5.1 Criação da aresta (cs0s1) entre os dois vencedores usando ECHL. . . . . 78
5.2 Remoção de aresta baseado na esfera de Thales. . . . . . . . . . . . . . 80
5.3 Inserção de novo vértice no GSRM. . . . . . . . . . . . . . . . . . . . 81
5.4 CHL não consegue triangular polígonos regulares ou aproximadamente
regulares, pois não existem amostras para disparar as conexões necessárias. 84
6.1 Imagens do Coelho sob diferentes pontos de vista. . . . . . . . . . . . . 108
6.2 Imagens da Mão sob diferentes pontos de vista. . . . . . . . . . . . . . 109
6.3 Imagens da face de Max-planck sob diferentes pontos de vista. . . . . . 109
6.4 Imagens do Dragão sob diferentes pontos de vista. . . . . . . . . . . . . 109
6.5 Imagens da estátua de Buddha sob diferentes pontos de vista. . . . . . . 110
6.6 Etapas de reconstrução do GSRM: (a) Antes da etapa final de aprendi-
zado de topologia, (b) após a etapa final de aprendizado de topologia, (c)
após a etapa de pós processamento. . . . . . . . . . . . . . . . . . . . . 112
xv
6.7 Polígonos antes e depois da triangulação durante o pós-processamento. . 113
6.8 Reconstrução do Coelho produzida pelo GSRM com aproximadamente
20000 vértices, a partir de diferentes pontos de vista. . . . . . . . . . . 114
6.9 Representações do objeto sintético Mão produzidas com: (a) GCS; (b)
GNG; (c) GSRM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
6.10 Reconstruções da Mão produzidas pelo GSRM com aproximadamente
20000 vértices a partir de diferentes pontos de vista. . . . . . . . . . . . 115
6.11 Malhas com diferentes resoluções produzidas pelo GSRM. . . . . . . . 115
6.12 Reconstrução da face de Max-Planck com cerca de 20000 vértices. . . . 116
6.13 Reconstrução do Dragão com cerca de 20000 vértices. . . . . . . . . . 116
6.14 Reconstrução da estátua de Buddha com cerca de 20000 vértices. . . . . 117
6.15 Malhas de triângulos produzidas pelo GSRM para três superfícies para-
métricas: (a) Esfera, (b) torus, (c) helicoide. . . . . . . . . . . . . . . . 117
6.16 Reconstruções produzidas pelo GSRM-iDT (∼20000 vértices). . . . . . 120
6.17 Imagens das estruturas anatômicas originais . . . . . . . . . . . . . . . 125
6.18 Estruturas Anatômicas Reconstruídas com o GSRM-TTR. . . . . . . . 128
6.19 Reconstruções da Mão produzidas pelo GSRM-rD usando vértices gera-
dos pelo GNG e pelo GSRM-iDT. . . . . . . . . . . . . . . . . . . . . 131
6.20 Aresta não-variedade após a execução de colapsos combinatoriais. . . . 134
6.21 Reconstruções do Coelho e o Max-Planck produzidas pelo GSRM-rD (
aproximadamente 5000 vértices). . . . . . . . . . . . . . . . . . . . . . 135
6.22 Reconstruções produzidas pelo GSRM-iDT e pelo GSRM-rD a partir de
nuvem de pontos amostrados de maneira uniformemente aleatória. Note
que o GSRM-iDT não conseguiu reproduzir corretamente uma das bordas.136
6.23 Reconstruções produzidas pelos métodos Poisson e Power Crust. . . . . 140
6.24 Reconstruções produzidas pelo método BPA. . . . . . . . . . . . . . . 141
6.25 Modelos originais sem buracos. . . . . . . . . . . . . . . . . . . . . . 141
6.26 Reconstruções do anjo David, Fertilidade e Genus3 com GSRM-iDT. . 142
6.27 Reconstruções do anjo David, Fertilidade e Genus3 com GSRM-rD. . . 143
6.28 Reconstrução do Armadillo com GSRM-iDT. . . . . . . . . . . . . . . 145
6.29 Reconstrução do Buddha com GSRM-iDT. . . . . . . . . . . . . . . . 146
6.30 Reconstrução do Buddha com GSRM-rD. . . . . . . . . . . . . . . . . 146
6.31 Reconstruções produzidas pelo GSRM-iDT e pelo GSRM-rD a partir de
nuvem de ponto com e sem ruído. . . . . . . . . . . . . . . . . . . . . 147
xvi
6.32 Reconstruções produzidas pelo GSRM-iDT (nuvem de pontos com e
sem ruído), usando como vértices os nodos do próprio mapa e pontos
amostrados da superfície. . . . . . . . . . . . . . . . . . . . . . . . . . 148
6.33 Reconstruções a partir de dados reais. . . . . . . . . . . . . . . . . . . 149
6.34 Reconstrução da garrafa de Klein (1000 vértices) produzidas com o
GSRM-rD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
xvii
Lista de Tabelas
2.1 Estruturas de Delaunay (tabela traduzida de Dyer (2010)) . . . . . . . . 22
3.1 Notação usada para descrever os modelos SOM-TVS. . . . . . . . . . . 50
6.1 Número de elementos dos objetos sintéticos originais. . . . . . . . . . . 108
6.2 Parâmetros de treinamento utilizados nos experimentos. . . . . . . . . . 108
6.3 Número de pontos amostrados nas superfícies alvo. . . . . . . . . . . . 111
6.4 Distâncias de Hausdorff entre as malhas originais e as malhas reconstruí-
das com: (a) duas versões do Neural Mesh (Saleem, 2003), e (b) GSRM. 118
6.5 Regularidade dos polígonos das malhas produzidas com diferentes mé-
todos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
6.6 Distribuição de vizinhança nas malhas produzidas com Neural Meshes. 119
6.7 Distribuição de vizinhança nas malhas produzidas com GSRM. . . . . . 121
6.8 Distâncias de Hausdorff entre as malhas originais e as produzidas pelo
GSRM e pelo GSRM-iDT. . . . . . . . . . . . . . . . . . . . . . . . . 121
6.9 Regularidade dos triângulos das malhas geradas pelo GSRM e pelo
GSRM-iDT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
6.10 Distribuição de vizinhança das malhas produzidas com GSRM e GSRM-
iDT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
6.11 Quantidade de arestas das malhas geradas com GSRM que são não-
localmente Delaunay (nlD) de acordo com o critério apresentado por
Bobenko e Springborn (2007) para superfícies planas por partes. . . . . 122
6.12 Ângulos mínimos das malhas e valores médios dos ângulos mínimos dos
triângulos das malhas. Valores dos ângulos em radianos. . . . . . . . . 123
6.13 Número de elementos das malhas originais e número de pontos amostra-
dos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
6.14 Regularidade de Polígonos: GSRM-TTR versus GSRM-iDT. . . . . . . 126
6.15 Distribuição de vizinhança (%): GSRM-TTR versus GSRM iDT. . . . . 126
6.16 Distâncias de Hausdorff: GSRM-TTR versus GSRM-iDT. . . . . . . . 126
6.17 Tempos de Ordenamento e Reconstrução (em segundos). . . . . . . . . 127
6.18 Regularidade de Polígonos: GSRM-TTR versus Power Crust . . . . . . 129
6.19 Distribuição de vizinhança (%): GSRM-TTR versus Power Crust . . . . 129
6.20 Distâncias de Hausdorff: GSRM-TTR versus Power Crust . . . . . . . 129
xix
6.21 Valores dos parâmetros de relaxamento (amostras distribuídas aleatoria-
mente). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
6.22 Valores dos parâmetros de relaxamento (amostras distribuídas uniforme-
mente). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
6.23 Quantidade de tetraedros e simplexos de maior dimensão (amostras dis-
tribuídas aleatoriamente). . . . . . . . . . . . . . . . . . . . . . . . . . 132
6.24 Quantidade de tetraedros e simplexos de maior dimensão (amostras dis-
tribuídas uniformemente). . . . . . . . . . . . . . . . . . . . . . . . . . 132
6.25 Variação do parâmetro ρ de acordo com |W | e |L|. . . . . . . . . . . . . 133
6.26 Quantidade de tetraedros e simplexos de maior dimensão após perturba-
ção de vértices (amostras distribuídas uniformemente). . . . . . . . . . 133
6.27 Quantidade de tetraedros e simplexos de maior dimensão após perturba-
ção de vértices (amostras distribuídas aleatoriamente). . . . . . . . . . . 133
6.28 Regularidade dos triângulos. . . . . . . . . . . . . . . . . . . . . . . . 137
6.29 Ângulos mínimos das malhas e valores médios dos ângulos mínimos dos
triângulos das malhas. Valores em radianos. . . . . . . . . . . . . . . . 137
6.30 Distâncias de Hausdorff. . . . . . . . . . . . . . . . . . . . . . . . . . 138
6.31 Distribuição de vizinhança (%). . . . . . . . . . . . . . . . . . . . . . . 138
6.32 Dados sobre malhas originais (anjo David, fertilidade, genus3) e as
amostras usadas para treinar o GSRM-iDT e GSRM-rD. . . . . . . . . 144
6.33 Distâncias de Hausdorff (modelos sem buracos). . . . . . . . . . . . . . 144
xx
1Introdução
Modelos tri-dimensionais de objetos reais podem ser visualizados e manipulados através
de computadores pessoais graças aos avanços recentes em tecnologias de hardware, tais
como velocidade de processadores, capacidade de memória e especialmente placas de
aceleração gráfica. A existência de tais modelos é útil em diferentes áreas de aplicação
em que pelo menos uma das seguintes situações se aplica: (a) o objeto real está ina-
cessível ou (b) quando se deseja analisar os resultados de manipulações ou intervenções
executadas em objetos sintéticos antes de executá-las de fato nos objetos reais correspon-
dentes. São exemplos da primeira situação artefatos culturais (Levoy et al., 2000; Cig-
noni e Scopigno, 2008; Remondino et al., 2009) que estão sujeitos a degradação pelo
tempo além de estarem geograficamente distantes da grande maioria dos interessados.
Neste caso a existência de modelos digitais destes objetos tornaria viável sua visualiza-
ção independentemente da distância, quer seja no tempo, ou no espaço, entre eles e os
interessados. Entre as aplicações da segunda situação estão produtos manufaturados que
necessitam de modificações (Mujber et al., 2004; Dangelmaier et al., 2005; Kühn, 2006).
Neste caso, a existência de modelos que possam ser facilmente manipulados e visuali-
zados através de computadores possibilitaria a análise de várias modificações possíveis
sem os custos de tempo e recursos exigidos caso todas estas possibilidades fossem tes-
tadas no objeto real. Semelhantemente em aplicações médicas a existência de modelos
da anatomia de um determinado paciente facilitaria o projeto de próteses bem adaptadas
(Gao et al., 2006; Geng et al., 2012). Em um outro tipo de aplicação médica estes mode-
los possibilitariam o planejamento pré-cirúrgico permitindo que possíveis dificuldades
fossem previstas e as ações adequadas planejadas (Xia et al., 2000; Olszewski et al.,
2008). A criação dos modelos tri-dimensionais desejados nos diferentes tipos de aplica-
ção pode ser feita manualmente com a utilização de software de modelagem (como 3D
1
CAPÍTULO 1. INTRODUÇÃO
studio Max e Maya 1) envolvendo trabalho humano intenso, ou os modelos podem ser
reconstruídos automaticamente a partir de dados do objeto 3D digitalizado. Este proce-
dimento é chamado engenharia reversa de modelos 3D, e é este o objeto de pesquisa do
trabalho a ser desenvolvido.
O problema de reconstrução de superfícies pode ser descrito pelo pipeline de mode-
lagem geométrica apresentado em Saleem (2003) e mostrado na Figura 1.1. A entrada
do pipeline consiste do objeto real, a primeira etapa de processamento corresponde à di-
gitalização do objeto utilizando-se alguma técnica de varredura 3D e resulta numa repre-
sentação da forma do objeto como um conjunto de pontos amostrados na sua superfície.
Este conjunto de pontos é denominado nuvem de pontos. A segunda etapa do pipeline
diz respeito à geração propriamente dita de um modelo 3D da superfície do objeto real,
normalmente representado por uma malha de polígonos, particularmente malha de triân-
gulos, por ser este o polígono mais simples e, portanto mais fácil de ser desenhado em
uma tela de computador, visto que as placas gráficas, responsáveis por este desenho, são,
por padrão, otimizadas para processar triângulos. Saleem (2003) adiciona uma terceira
etapa ao pipeline, que consiste na simplificação da malha gerada, ou seja, a geração de
malhas com menos detalhes e que ainda assim forneçam representações satisfatórias da
superfície alvo e possam ser mais facilmente visualizadas e manipuladas por computa-
dores. Neste trabalho serão empregados algoritmos baseados em aprendizagem para a
geração de modelos de superfícies de objetos, representados por malhas de triângulos.
Mais especificamente, este trabalho propõe novos modelos de Mapa auto-organizáveis,
com estrutura variante no tempo (SOM-TVS) (Araujo e Rego, 2013) para solucionar o
problema de reconstrução de superfícies a partir de nuvens de pontos. As soluções pro-
postas são capazes de produzir malhas em diferentes resoluções durante o aprendizado.
Deste modo, a etapa de simplificação da malha não se faz necessária.
Objeto
AlvoAmostrar Pontos
Nuvem de
PontosReconstruir
Superfície
Modelo
Digital
Figura 1.1 Pipeline de modelagem geométrica.
Formalmente, o problema de reconstrução de superfícies a ser tratado nesta tese
consiste em produzir uma malha de triângulos M para representar uma superfície alvo
M, sendo a própria superfície M desconhecida, exceto por um conjunto de pontos W
amostrados em M. Esta tese utiliza uma abordagem baseada em aprendizado, em que
1http://www.autodesk.com.br
2
os pontos em W são usados como dados de entrada para geração dos vértices da malha
e aprendizado da topologia de M, durante o processo de aprendizado.
De modo geral, os métodos de reconstrução de superfícies podem ser classificados
como métodos estáticos, baseados em técnicas geométricas, e métodos dinâmicos, ba-
seados na avaliação de funções de força ou de energia. Dentre os métodos estáticos,
os mais comumente citados são os propostos em Amenta et al. (1998a, 2001), Dey e
Goswami (2006) e Hoppe et al. (1992). Este métodos produzem representações com-
plexas e usualmente são necessários métodos de simplificação de malhas para produzir
representações com menos detalhes. Este requisito de malhas com menos detalhes é exi-
gido em algumas aplicações devido à dificuldade para visualizar e manipular modelos
muito complexos em computadores pessoais. Métodos dinâmicos, como os que foram
propostos por Miller et al. (1991) e Qin et al. (1998) reconstroem a superfície alvo par-
tindo de um modelo inicial pré-definido e modificando este modelo para que ele tome a
forma alvo. A principal limitação deste tipo de abordagem diz respeito às formas que
não podem ser atingidas pela modificação do modelo inicial. Isto acontece sempre que
o modelo inicial não é topologicamente equivalente ao modelo alvo, por exemplo, uma
esfera e um torus.
Uma abordagem para o problema de reconstrução de superfícies que é diferente das
anteriores são os métodos baseados em aprendizado. Algoritmos de aprendizado são ca-
pazes de processar dados volumosos e, possivelmente, ruidosos, como são as nuvens de
pontos obtidas a partir de digitalizadores (scanners) 3D utilizados para amostrar um con-
junto de pontos da superfície alvo, que será usado para reconstruí-la. Seguindo esta abor-
dagem algumas pesquisas têm empregado mapas auto-organizáveis para a reconstrução
de superfícies. A motivação para isto, é que o Mapa Auto-organizável (Self-organizing
Map, SOM) (Kohonen, 1982) é capaz de formar mapas topológicos para replicar a distri-
buição dos dados de entrada. Além disto, o SOM possui uma estrutura que é semelhante
às malhas de polígonos, sendo formada por nodos e conexões, que correspondem aos
vértices e arestas de uma malha, respectivamente.
A estrutura fixa do SOM originalmente proposto por Kohonen, limita as superfícies
que podem ser representadas pelas malhas geradas, pois com um conjunto de conexões
fixas, o SOM não consegue aprender as conexões entre os vértices para gerar uma ma-
lha que represente a forma do objeto alvo de maneira adequada. Como o número de
nodos também é fixo, a resolução das malhas geradas pelo SOM depende do número
pré-estabelecido de nodos. Para lidar com estas limitações, têm sido propostos méto-
dos de reconstrução baseados em variantes do SOM cuja estrutura se modifica durante
3
CAPÍTULO 1. INTRODUÇÃO
o treinamento. O método proposto por Brito et al. (2008) utiliza o algoritmo de trina-
mento do SOM seguido de técnicas geométricas para aprender a topologia alvo e inserir
novos nodos ao mapa. A Malha Neural (Neural Mesh), método proposto por Ivrissimt-
zis et al. (2003), consiste em uma variação do Growing Cell Structures (GCS) (Fritzke,
1994). Como o GCS mantém a topologia inicial durante todo o treinamento, Ivrissimt-
zis et al. (2004) adiciona uma etapa adicional para aprendizado de topologia à Malha
Neural. A Malha Neural tira proveito da habilidade que o GCS possui para gerar malhas
com diferentes resoluções durante o processo de treinamento.
A topologia da malha é definida pela conectividade entre os vértices formando as
arestas e faces da malha. O aprendizado desta topologia se constitui numa dificuldade
porque não há informações disponíveis para isto na nuvem de pontos, que contém ape-
nas as coordenadas dos pontos amostrados na superfície do objeto alvo. Barhak (2002)
propõe um método que é capaz de aprender a topologia do objeto alvo utilizando uma
versão modificada do Aprendizado Hebbiano Competitivo (CHL), que é o algoritmo
usado pelas redes de representação de Topologias (Topology Representing Networks,
TRN) (Martinetz e Schulten, 1994). O método de Barhak (2002), aprende a topologia
alvo, mas apresenta a desvantagem de usar um número de nodos pré-definido.
O Gás Neural Crescente (Growing Neural Gas, GNG), proposto por Fritzke (1995b),
pode ser visto como uma variação do GCS capaz de aprender topologias, ou como uma
variação do TRN capaz de crescer incrementalmente durante o aprendizado. Ou seja, o
GNG tanto cresce incrementalmente como aprende topologias. Deste modo, ele foi con-
siderado nesta tese como ponto de partida para as soluções propostas. O GNG utiliza o
CHL (Martinetz e Schulten, 1994) para aprender a topologia dos dados de entrada, ge-
rando um grafo que é um subconjunto da triangulação de Delaunay. Esta característica
é interessante para o problema tratado nesta tese visto que as abordagens de reconstru-
ção de superfícies típicas em geometria computacional utilizam diagramas de Voronoi e
triangulações de Delaunay (Edelsbrunner e Mücke, 1994; Cazals e Giesen, 2006; Dyer
et al., 2009). Entretanto o grafo produzido pelo CHL consiste apenas de arestas, e para
representação de superfícies são necessárias malhas de triângulos.
De Silva e Carlsson (2004) definem o complexo de testemunhas, que generaliza
os grafos de preservação de topologia gerados pelo CHL (Martinetz e Schulten, 1994),
sendo capaz de produzir complexos simpliciais em vez de apenas grafos. Além disto,
De Silva e Carlsson (2004) mostraram que a triangulação de Delaunay de uma con-
junto de pontos L (Del(L,Rd)) é equivalente ao complexo de testemunhas fracas de L
(Wit(L,Rd)). Attali et al. (2007) estenderam o trabalho de De Silva e Carlsson (2004)
4
para subvariedades do espaço Euclideano, e mostraram que, para curvas e superfícies,
o complexo de testemunhas fracas de L restrito a uma subvariedade M é equivalente à
triangulação de Delaunay de L restrita a M (Del(L,M) =Wit(L,M)), sob determinadas
condições de amostragem de L. Este resultado é importante visto que existem garantias
teóricas de que a triangulação de Delaunay restrita é uma aproximação fiel da variedade
em que os pontos foram amostrados, em termos de topologia, geometria e quantida-
des diferenciáveis (como normais e curvatura) (Amenta, 1998; Amenta e Bern, 1998;
Amenta et al., 2000; Boissonnat e Oudot, 2005).
Sendo assim, foi inicialmente proposta uma solução baseada em complexos de tes-
temunhas fracas, denominada Growing Self-reconstruction Maps (GSRM) (Rego et al.,
2009, 2010). O GSRM se difere do GNG de várias formas: (a) critério para remoção
de arestas durante o treinamento; (b) utilização do conceito de testemunhas fracas em
lugar do CHL, para geração de malhas de triângulos em vez de grafos; (c) inclusão de
heurísticas para evitar que mais de três faces compartilhem uma mesma aresta (para ge-
ração de malhas 2-variedade), e para evitar que duas arestas de cruzem. Em seguida foi
proposto o GSRM-iDT que adiciona o critério local da triangulação de Delaunay intrín-
seca para superfícies planas por partes, apresentado por Bobenko e Springborn (2007),
na heurística usada para gerar malhas 2-variedade. Este método é chamado de GSRM
com triangulação de Delaunay Intrínseca (GSRM with Intrinsic Delaunay Triangulation,
GSRM-iDT) (do Rego e Araújo, 2010). Uma limitação comum ao GSRM e GSRM-iDT
é a necessidade de pós-processamento para preencher buracos na malha gerada. Para
evitar este problema foi proposta uma outra solução baseada no complexo Delaunay
relaxado apresentado por Boissonnat et al. (2011). Esta, chamada de GSRM-relaxed
Delaunay (GSRM-rD,) é capaz de evitar os buracos indesejados, e de gerar simplexos
com dimensionalidade arbitrária, sendo necessário pós-processamento para extração de
variedades. Apesar de isto representar uma limitação no caso de reconstrução de super-
fícies, torna possível a extensão do método para aplicações em que é preciso reconstruir
variedades em dimensões arbitrárias: (Belkin e Niyogi, 2004; Seow et al., 2005; Lee
et al., 2003; Demers e Y, 1993).
Foram realizados diversos experimentos usando nuvens de pontos com diferentes
características: (a) amostradas a partir de objetos sintéticos (malhas de triângulos); (b)
amostradas a partir de superfícies paramétricas; (c) representando estruturas anatômicas
humanas; (d) amostradas a partir de objetos sintéticos com adição de ruído; (e) dados re-
ais obtidos com digitalizadores laser. No caso dos objetos sintéticos, foram amostrados
pontos de maneira uniforme e aleatória nas faces destes objetos gerando nuvens de pon-
5
CAPÍTULO 1. INTRODUÇÃO
tos densas. Para as superfícies paramétricas, a nuvem de pontos foi gerada pela escolha
aleatória de valores de parâmetros para obtenção das coordenadas dos pontos. As nu-
vens de pontos ruidosos foram geradas com auxílio da ferramenta OpenFlipper (Möbius
e Kobbelt, 2012). Os modelos de estruturas anatômicas foram cedidos pela Bioparts2.
As nuvens de pontos obtidas com digitalizadores laser foram obtidas no repositório Stan-
ford3 e AimShape (Falcidieno, 2004). Também foi realizado um experimento usando
uma variedade (garrafa de Klein) imersa em um espaço de dimensão mais alta (R5). Os
experimentos mostram que as soluções propostas são capazes de produzir malhas que
representam satisfatoriamente as superfície alvos, tanto geométrica quanto topologica-
mente, e que são capazes de gerar malhas com diferentes resoluções. As malhas geradas
foram avaliadas com respeito a diferentes métricas: distância de Hausdorff para a malha
original, distribuição de vizinhança dos vértices, regularidade de polígonos. Os resulta-
dos do GSRM, GSRM-iDT e GSRM-rD, são comparados entre si, e com outros métodos,
baseados em aprendizagem ou não.
Alguns dos pontos positivos apresentados pelas soluções propostas são: (a) a conecti-
vidade entre os vértices pode ser estabelecida ainda que nenhuma informação sobre esta
conectividade esteja disponível nos dados de entrada; (b) a conectividade entre os vérti-
ces é feita de tal maneira que a malha resultante seja 2-variedade (GSRM e GSRM-iDT);
(c) as faces triangulares são aproximadamente equiláteras; (d) malhas com diferentes re-
soluções podem ser produzidas para atender necessidades de diferentes aplicações; (e)
o efeito da presença de ruído nos dados pode ser amenizado em malhas com baixa reso-
lução. As principais contribuições desta tese são: investigação da habilidade de mapas
auto-organizáveis com estrutura variante no tempo na solução do problema de recons-
trução de superfícies; proposição de soluções que utilizam as propriedades favoráveis
destes mapas para solucionar o problema em questão, e que se baseiam em estruturas
com fundamentação teórica para fornecer boas aproximações das variedades alvo: com-
plexo de testemunhas (De Silva, 2008), e complexo de Delaunay relaxado (Boissonnat
et al., 2011). As principais limitações das soluções propostas estão relacionadas com
a necessidade de pós-processamento para preenchimento de buracos (GSRM e GSRM-
iDT) e extração de variedade (GSRM-rD).
O restante desta tese está organizado da seguinte maneira: O Capítulo 2 apresenta
os fundamentos de geometria computacional utilizados nesta tese. O Capítulo 3 mos-
tra uma visão geral dos mapas auto-organizáveis e, particularmente, dos mapas auto-
2www.bioparts.com.br3http://graphics.stanford.edu/data/3Dscanrep/
6
organizáveis com estrutura variante do tempo (SOM-TVS), bem como apresenta os mo-
delos SOM-TVS relacionados ao modelo proposto nesta tese. No Capítulo 4 são descri-
tos outros modelos SOM-TVS propostos para o problema de reconstrução de superfície.
A soluções propostas são descritas no Capítulo 5. O Capítulo 6 apresenta os experimen-
tos realizados e discute os resultados obtidos. As discussões finais e trabalhos futuros
estão no Capítulo 7.
7
2Fundamentos de Geometria
Computacional
Para reconstruir superfícies a partir de uma nuvem de pontos, gerando malhas de triân-
gulos para representá-las, é preciso estabelecer conexões de vizinhança entre os pontos
amostrados. Por este motivo, uma construção geométrica definindo um complexo simpli-
cial (simplicial complex) sobre estas amostras, como na triangulação de Delaunay, pode
ser utilizada como estrutura auxiliar de dados para reconstrução. Um dos primeiros
trabalhos a utilizar esta ideia foi proposto por Boissonnat (1984), e desde então a trian-
gulação de Delaunay e sua estrutura dual, o diagrama de Voronoi, têm sido utilizados
com este propósito (Amenta et al., 1998a, 2001; Dey e Goswami, 2006).
As triangulações de Delaunay juntamente com os diagramas de Voronoi estão entre
as estruturas fundamentais do conjunto de ferramentas da Geometria Computacional.
Elas foram originalmente definidas para domínios euclideanos. Entretanto, o foco deste
trabalho são superfícies 2D que delimitam objetos no espaço 3D, portanto domínios
não-euclideanos.
Este capítulo apresenta inicialmente um conjunto de definições básicas necessárias
para entendimento das definições dos diagramas de Voronoi e triangulações de Delaunay,
bem como extensões destas estruturas para as superfícies 2D imersas no espaço 3D. Dyer
(2010) examina três estruturas de Delaunay para superfícies distintas, apresentando suas
semelhanças e diferenças. Por este motivo, este capítulo está fortemente baseado nas
definições apresentadas por Dyer (2010).
9
CAPÍTULO 2. FUNDAMENTOS DE GEOMETRIA COMPUTACIONAL
2.1 Definições Básicas
Definição 1. Espaço Euclideano e Domínio Euclideano. Definimos o Espaço Euclidi-
ano de dimensão n como sendo o espaço Rn dotado da métrica euclidiana usual, isto é,
dado dois pontos p = [p1 p2... pn]⊤ e q = [q1 q2... qn]
⊤ , medimos a distância entre p e
q por:
||p−q||= (p1 −q1)2 + ...+(pn −qn)
2☛✡
✟✠2.1
Um domínio Euclideano é um subconjunto do espaço Euclidiano. Por exemplo, uma
esfera sólida é um domínio Euclideano. A superfície da esfera delimita o interior da
esfera, ou seja, ela é a borda da esfera, mas não é um domínio Euclideano. Note que
a distância entre dois pontos na superfície de uma esfera não pode ser definida pela
Equação 2.1.
Definição 2. Distância de Hausdorff. Dado um ponto p e uma superfície S a distância
e(p,S) é definida como:
e(p,S) = minp′∈S
d(p, p′)☛✡
✟✠2.2
onde d(.) é a distância euclideana entre dois pontos.
A distância unilateral entre duas superfícies S1 e S2 é definida como:
E(S1,S2) = maxp∈S1
e(p,S2)☛✡
✟✠2.3
Esta definição de distância não é simétrica, ou seja, é possível que E(S1,S2) 6=E(S2,S1). A distância bilateral (distância de Hausdorff) pode ser obtida tomando o
máximo entre E(S1,S2) e E(S2,S1)
Definição 3. Raio de Amostragem. Seja W um subconjunto finito de Rd , dizemos que
W é uma ε-amostra de X se dH(W,X)< ε , em que dH(.) denota a distância de Hausdorff.
ε é chamado raio de amostragem, porque qualquer bola de raio ε centrada em X deve
conter um ponto em W . Dizemos que W é β -esparso se dRd(w,w′)≥ β ∀w,w′ ∈W .
Definição 4. Variedade. Uma variedade (manifold) é um espaço topológico que é lo-
calmente Euclidiano. Ou seja, ao redor de cada ponto, existe uma vizinhança que é
topologicamente a mesma (homeomorfa) que uma bola unitária em Rn. Para ilustrar
esta ideia, compare a crença antiga de que a Terra era plana com o conhecimento atual
de que ela é redonda (esférica). A crença antiga se justifica essencialmente pelo fato
10
2.1. DEFINIÇÕES BÁSICAS
de que nas pequenas escalas que nós vemos, a Terra na verdade parece plana. Neste
exemplo, a superfície da Terra é uma variedade de dimensão 2 (2-variedade), pois em
cada ponto existe uma vizinhança que é topologicamente equivalente a um disco (bola
em R2).
Definição 5. Homeomorfismo. Um mapeamento h : F → F′ é injetor (um para um) se
não existem dois pontos em F mapeados para o mesmo ponto em F′. Ele é sobrejetor se
cada ponto em F′ é a imagem de algum ponto em F. Se h é injetora e sobrejetora, então
ela é dita bijetora.
Os objetos, F e F′, são considerados equivalentes se existir um mapeamento bije-
tor entre eles que preserve as estruturas consideradas. De modo geral, um mapeamento
deste tipo é chamado de isomorfismo, e F e F′ são ditos isomorfos. De modo específico,
quando apenas a estrutura topológica de F e F′ é considerada, um isomorfismo é cha-
mado de homeomorfismo. Um mapeamento bijetor h é um homeomorfismo se ele for
contínuo e possuir um inverso contínuo, ou seja, h−1 :F′ →F também deve ser contínuo.
Os objetos F e F′ são ditos homeomorfos, ou topologicamente equivalentes.
Definição 6. Mergulho e imersão. Um mergulho (embedding) φ : F→ Rd é um mape-
amento no qual o domínio é isomorfo à imagem, ou seja, φ é um isomorfismo entre F e
F = φ(F) ⊂ Rd . Se F estiver mergulhado em Rd , então a distinção entre F e F não é
matematicamente importante.
Um mapeamento φ é uma imersão se ele for localmente um mergulho. Isto significa
que cada ponto x ∈ F admite uma vizinhança aberta V , tal que φ |V é um mergulho,
onde φ |V é a restrição de φ a V . Portanto, o critério para que φ seja uma imersão é
mais relaxado do que para ser um mergulho. Particularmente, se φ for uma imersão ela
não precisa ser injetora. O conceito de imersão permite considerar superfícies que se
auto-interceptam. A Figura 2.1 ilustra um mergulho e uma imersão. O torus (a) está
topologicamente mergulhado em R3. Em (b) o torus não está mergulhado em R3 pois
possui auto-interseções. Topologicamente, este objeto não é um torus, mas pode ser
visto como um torus imerso em R3.
Definição 7. Simplexos Seja S um conjunto finito no espaço euclidiano d-dimensional,
Rd . O ponto x = ∑ai pi, com ∑ai = 1 é uma combinação afim dos pontos pi ∈ S. O
fecho afim, aff S, é o conjunto de todas as combinações afins. Os pontos em S são ditos
independentes afim (i.a.) se nenhum deles for combinação afim de outros. Por exemplo,
o fecho afim de três pontos i.a. é um plano, de dois pontos i.a. é uma reta, e o fecho afim
de um único ponto é o próprio ponto. Uma combinação convexa é uma combinação afim
11
CAPÍTULO 2. FUNDAMENTOS DE GEOMETRIA COMPUTACIONAL
(a) Torus mergulhado (b) Torus imerso
Figura 2.1 Ilustrações de (a) mergulho e (b) imersão. Original em Dyer (2010).
com coeficientes não-negativos (ai ≥ 0 ∀pi ∈ S). O fecho convexo, conv S, é o conjunto
de todas as combinações convexas. Um simplexo é o fecho convexo de um conjunto
de pontos independentes afins. Seja S ⊆ Rd um conjunto de k+ 1 pontos i.a., então a
dimensão do simplexo σ = convS é dimσ = k, e σ é chamado k−simplexo. O maior
número de pontos i.a. em Rd é d +1. Por exemplo, em R3 existem 5 tipos possíveis de
simplexos: um 0−simplexo é um ponto, um 1−simplexo é uma aresta, um 2−simplexo
é um triângulo, um 3−simplexo é um tetraedro. O quinto tipo é o simplexo vazio (−1-
simplexo). Se os pontos em S são i.a., então os pontos em T ⊆ S são também i.a., e assim,
o fecho convexo de T é também um simplexo. Especificamente, o simplexo τ =conv T
é subconjunto de pontos x ∈ σ com ai = 0 sempre que pi ∈ S não está em T . O simplexo
τ é chamado face de σ e esta relação é denotada por τ ≤ σ . Seja dimτ = l, então τ é
chamado l-face.
Definição 8. Complexos Simpliciais. Um complexo simplicial K é uma coleção de
simplexos tais que: (1) Se σ ∈ K, então todas as faces τ ⊂ σ também pertencem a
K; (2) A interseção entre quaisquer dois simplexos é uma face de cada um deles. A
dimensão de K é a maior dimensão de todos os simplexos.
A Figura 2.2 ilustra (a) um complexo simplicial, e (b) um conjunto de simplexos que
não formam um complexo simplicial, pois existem dois simplexos cuja interseção não é
uma face de cada um deles. Por exemplo, o ponto p na Figura 2.2 não é face de nenhum
dos complexos simpliciais que se interceptam.
Um subcomplexo é um subconjunto que também é ele mesmo um complexo sim-
plicial. Particularmente, o subcomplexo denominado i-esqueleto consiste de todos os
simplexos σ ∈K cuja dimensão é i ou menos. Por exemplo, o conjunto de vértices de
K é o mesmo que o 0-esqueleto, exceto por não conter o (−1)-simplexo.
A estrela de um simplexo τ consiste de todos os simplexos que contém τ .
12
2.1. DEFINIÇÕES BÁSICAS
(a)
p
(b)
Figura 2.2 Complexo Simplicial: (a) um exemplo; (b) um caso de não ocorrência.
Definição 9. Complexo Simplicial Abstrato. Se cada simplexo em um complexo sim-
plicial for trocado pelo conjunto de seus vértices, obtém-se um sistema de subconjuntos
do conjunto de vértices. Note que, fazendo isto descartamos a geometria dos simplexos.
Formalmente, um sistema finito A de conjuntos finitos, é um complexo simplicial abs-
trato se α ∈A e β ⊆ α implica β ∈A. Este requisito é similar à condição 1 estabelecida
para complexos simpliciais geométricos na Definição 8. Um conjunto α ∈ A chamado
simplexo abstrato e sua dimensão é: dimα = cardα −1, onde cardα é o número de vér-
tices em α . Os conceitos de face, subcomplexo e estrela apresentados para complexos
simpliciais geométricos na Definição 8 também se aplicam aos complexos simpliciais
abstratos.
O complexo simplicial abstrato pode ser entendido como sendo una versão abstrata
do complexo simplicial geométrico. Para formalizar esta ideia definimos a realização
geométrica de um complexo simplicial abstrato A como sendo o complexo simplicial
K juntamente com uma bijeção ϕ : VertA → VertK tal que α ∈ A se e somente se
convϕ(α) ∈K. Reciprocamente A é chamado de abstração de K.
Definição 10. Diagrama de Voronoi. Dado um conjunto P de n pontos em Rd , o
diagrama de Voronoi particiona Rd em n células: cada célula está associada com um
ponto em P. Sendo p ∈ P, a célula de Voronoi associada a p é denotada por V (p),
e compreende o conjunto de pontos que estão pelo menos tão próximos a p quanto a
qualquer outro ponto q ∈ P. Desta forma, a célula de Voronoi de um ponto p ∈ P é
definido pela Equação 2.4. O conjunto das células de Voronoi de todos os pontos p ∈ P
formam o diagrama de Voronoi de P. A Figura 2.3 ilustra um conjunto de pontos e o
diagrama de Voronoi (representado pelas linhas cheias) destes pontos.
V (p) = {x ∈ Rd|dRd(p,x)≤ dRd(q,x),∀q ∈ P}☛✡
✟✠2.4
13
CAPÍTULO 2. FUNDAMENTOS DE GEOMETRIA COMPUTACIONAL
Figura 2.3 Ilustração de Diagrama de Voronoi e Triangulação de Delaunay em R2.
onde dRd(p,x) denota a distância Euclidiana entre p e x em Rd .
Dois pontos p,q ∈ P são vizinhos de Voronoi se suas células de Voronoi possuem
uma interseção não vazia. Em R2 as células de Voronoi são polígonos convexos, e em
dimensões maiores são politopos convexos. A interseção de d + 1 ou mais células de
Voronoi é chamada vértice de Voronoi (como o vértice v1 na Figura 2.3). Um vértice de
Voronoi v é equidistante dos elementos de P que o definem (v1 é equidistante de p1, p2 e
p3 na Figura 2.3). Se v =⋂d
i=0V (pi), então todos os pontos pi estão em uma hiperesfera
comum, centrada em v. Considere, por exemplo, os pontos p1, p2 e p3 que estão no
círculo na Figura 2.3. Note as regiões de Voronoi destes pontos se interceptam, e que esta
interseção constitui um vértice de Voronoi (v1). Para um conjunto de pontos aleatórios
P ⊂ Rd , as chances de mais que d + 1 pontos estarem em uma hiperesfera comum é
muito pequena (Edelsbrunner, 2001). Um conjunto de pontos P está em posição geral
quando a interseção de mais que d +1 células de Voronoi é sempre vazia.
Para pontos em posição geral, a interseção de k células de Voronoi é vazia ou é um
politopo de dimensão (d+1)−k chamado faceta de Voronoi (Voronoi facet). Uma aresta
de Voronoi é um caso específico em que k = d. Para d = 2, por exemplo, a interseção de
duas células de Voronoi (k = d = 2) é um aresta, e a interseção de três células (k = 3) é
um ponto (vértice de Voronoi). Na Figura 2.3, a aresta av é a interseção das células de
Voronoi de p1 e p3, e o ponto v1 é a interseção das células de Voronoi de p1, p2 e p3.
Para d = 3, a intercessão de duas células de Voronoi (k = 2) é um triângulo (denominado
face), de três células (k = d = 3) é uma aresta, e de quatro células é um ponto.
Definição 11. Triangulação de Delaunay. Para um conjunto de pontos P em posição
geral, a triangulação de Delaunay de P∈Rd é a estrutura dual ao diagrama de Voronoi de
P, conforme ilustra a Figura 2.3 (linhas pontilhadas). Para d = 2, a relação de dualidade
14
2.1. DEFINIÇÕES BÁSICAS
av
v
(a)
p1
p2
p3
(b)
Figura 2.4 Ilustração de Dualidade entre (a) diagrama de Voronoi e (b) triangulação de Delau-nay.
é descrita a seguir: Um triângulo de Delaunay t é o dual do Vértice de Voronoi v, definido
pela interseção das regiões de Voronoi dos vértices de t. Uma aresta epq de t é dual à
aresta de Voronoi que corresponde à interseção das regiões de Voronoi dos pontos p e
q (V (p)∩V (q)). Os vértices da triangulação de Delaunay são as amostras, e são duais
às células de Voronoi correspondentes no diagrama de Voronoi. A Figura 2.4 ilustra
esta dualidade: O triângulo formado pelos pontos p1, p2 e p3 na Figura 2.4(b) é dual ao
vértice de Voronoi v na Figura 2.4(a). A aresta da triangulação de Delaunay que conecta
os pontos p1 e p3, destacada na Figura 2.4(b), é dual à aresta av do diagrama de Voronoi,
destacada na Figura 2.4(a). E o ponto p2 na triangulação de Delaunay (Figura 2.4(b)), é
dual à célula de Voronoi delimitada pelo hexágono destacado na Figura 2.4(a).
A propriedade do circumdisco vazio, descrita a seguir, é usada para definir formal-
mente as triangulações de Delaunay. Se c for um vértice de Voronoi definido pelas
amostras p,q,s ∈ P, então estas amostras estão em um círculo, C, centrado em c, e não
existem amostras no interior do disco (2-bola) delimitado por C. Observe que os pontos
p1, p2 e p3 mostrados na Figura 2.3 definem um triângulo, e que o circumdisco deste
triângulo não possui outros pontos em seu interior. Se P está em posição geral, então
cada aresta e de t pode estar contida em um disco cujos únicos pontos em sua borda são
as extremidades de e e que não possui nenhuma amostra em seu interior.
Dyer (2010) define Triangulação de Delaunay da seguinte maneira: Seja P ∈ Rd um
conjunto finito de pontos. A triangulação de Delaunay de P, denotada por Dd(P), é uma
triangulação tal que, para cada simplexo σ ∈Dd(P) existe uma d-bola (hiperesfera no
espaço Rd) que possui os vértices de σ em sua borda e que não contém elementos de P.
15
CAPÍTULO 2. FUNDAMENTOS DE GEOMETRIA COMPUTACIONAL
Figura 2.5 Aresta localmente Delaunay (eab) e não localmente Delaunay (ecd).
Se P está em posição geral, a triangulação de Delaunay é única. Caso contrário, a
triangulação de Delaunay não é única. Por exemplo, em um plano, se quatro pontos
estão na borda de um círculo, existem duas maneiras de triangular seu fecho convexo e
ambas satisfazem a definição de triangulação de Delaunay.
É importante distinguir entre aresta Delaunay e aresta localmente Delaunay. Consi-
dere dois triângulos em R2, tcad e tbcd (ver Figura 2.5), que compartilham uma mesma
aresta ecd . A aresta ecd é dita localmente Delaunay se b não estiver contido no cir-
cumdisco de tcad , ou equivalentemente, a não estiver contido no circumdisco de tbcd .
Delaunay (1934) demonstra que uma triangulação é Delaunay se, e somente se, todas as
arestas são localmente Delaunay. Existe uma maneira conveniente de verificar se uma
aresta é localmente Delaunay (Bobenko e Springborn, 2007): a soma dos ângulos nos
vértices a e b opostos à aresta ecd nos triângulos adjacentes (tcad e tbcd) não podem exce-
der π . Se e não é localmente Delaunay (nlD), então o quadrilátero [c,a,d,b] é convexo e
a aresta oposta eab é localmente Delaunay (Dyer, 2010). A Figura 2.5 ilustra um exem-
plo em que a aresta ecd não é localmente Delaunay, mas a aresta oposta eab é localmente
Delaunay. A operação de substituir uma aresta não localmente Delaunay (nlD) pela
aresta oposta que é localmente Delaunay é denominada troca de aresta (edge-flip). Com
a troca de aresta as faces incidentes na aresta que é não Delaunay (faces tcad e tbcd no
exemplo da Figura 2.5) são substituídas por faces incidentes na nova aresta, localmente
Delaunay (faces tcab e tbad no exemplo da Figura 2.5).
Note que uma aresta localmente Delaunay em uma triangulação qualquer, não neces-
sariamente pertence à triangulação de Delaunay. Por outro lado, uma aresta de Delaunay
necessariamente pertence à triangulação de Delaunay de um conjunto de pontos P. Dyer
(2010) afirma que o número de arestas nlD em uma triangulação não é necessariamente
um bom indicador de quantas inversões de arestas serão necessárias para alcançar a tri-
angulação de Delaunay. É possível construir uma configuração em que existe apenas
uma aresta nlD, mas nenhum dos triângulos sejam Delaunay (Guibas e Russel, 2004).
16
2.2. DIAGRAMAS DE VORONOI E TRIANGULAÇÕES DE DELAUNAY EMSUPERFÍCIES
2.2 Diagramas de Voronoi e Triangulações de Delaunay
em Superfícies
As definições de diagrama de Voronoi e triangulação de Delaunay anteriormente apre-
sentados são válidas para domínios Euclidianos. Entretanto, para este trabalho, é preciso
estender estas definições para domínios não-Euclidianos, particularmente superfícies 2D
que constituem o limite (borda) de objetos no espaço 3D. A extensão da definição dos
diagramas de Voronoi é trivial, porém isso não é verdade quando se trata da extensão da
definição da triangulação de Delaunay para superfícies. Os diagramas de Voronoi devem
satisfazer algumas condições, que serão apresentadas a seguir, para garantir a existência
de uma malha de triângulos (Definição 12) que seja naturalmente dual ao diagrama de
Voronoi e que seja uma triangulação de S.
Quando estas condições são satisfeitas, então as faces e as arestas da malha podem
ser descritas por um critério de circumdisco vazio, assim como as triangulações de De-
launay tradicionais. Os diagramas de Voronoi e os circumdiscos vazios são definidos
pela escolha de uma métrica, ou seja, uma decisão de como medir a distância entre
pontos em S.
A triangulação de Delaunay restrita (restricted Delaunay triangulation, rDT), resulta
do critério de que cada triângulo da malha t está contido em uma bola Euclidiana 3D com
centro em S, tal que todos os vértices de t estão em sua borda e nenhuma amostra p ∈ P
está em seu interior. Esta propriedade é simplesmente a propriedade do circumdisco
vazio quando a distância dR3 (distância euclidiana entre dois pontos em R3) é utilizada
para medir distâncias em S. Por outro lado, a triangulação de Delaunay intrínseca utiliza
a distância intrínseca (dS) em S, e cada triângulo deve ter um circumdisco geodésico
vazio.
Dyer et al. (2009) definiram uma triangulação de uma superfície S como sendo um
complexo simplicial, K, juntamente com um homeomorfismo h : K → S. Dado um
conjunto de amostras P ⊂ S, então uma triangulação de P em S é uma triangulação
h : K → S tal que os vértices de K são mapeados bijetivamente em P. Uma superfí-
cie plana por partes propriamente triangulada é um complexo simplicial caracterizado
como uma variedade de dimensão 2 (Dyer (2010)), portanto estes termos serão usados
indistintamente.
Definição 12. Malhas de Triângulos. Segundo Praun et al. (2001), uma malha de
triângulos M é um par (P,AM), em que P é um conjunto de N posições de pontos em Rd ,
17
CAPÍTULO 2. FUNDAMENTOS DE GEOMETRIA COMPUTACIONAL
p r t
w
q v
u
Figura 2.6 Malha de triângulos singular.
ou seja, P = {pi = (xi,yi,zi) ∈R3∀1 ≤ i ≤ N}, e AM é um complexo simplicial abstrato
que contém todas as informações topológicas, ou seja, de adjacência.
Para que M seja uma variedade, dois triângulos na estrela de qualquer vértice não
podem se interceptar em seus interiores: a estrela de qualquer vértice p ∈ M é homeo-
morfa a um disco fechado (Dyer (2010)). Na Figura 2.6 temos os seguintes triângulos
na estrela no vértice p (tpwu, tpqv, tpwv, tpuq, tpuv). Esta malha não é uma variedade. Note,
por exemplo, que os triângulos tpwv e tpuq se interceptam. O vértice p não admite uma
vizinhança em M que seja homeomorfa a um disco. Se uma malha de triângulos, M, é
uma variedade sem bordas, todo vértice está no interior topológico do disco definido por
sua estrela. Caso a M seja uma variedade com bordas é possível que existam vértices
localizados na borda de sua própria estrela, estes vértices são chamados de vértices de
borda. Um aresta de borda conecta dois vértices de borda (Dyer (2010)).
Segundo Barhak (2002), em uma variedade sem borda, cada aresta regular possui
duas faces coincidentes e cada vértice regular tem o mesmo número de faces e arestas
incidentes. Se uma variedade possui borda, as arestas de borda possuem apenas uma
face coincidente, e em cada vértice de borda o número de faces incidentes é igual ao
número de arestas incidentes menos 1. Malhas que possuem vértices e/ou arestas que
não são regulares ou de borda são malhas singulares. Note que o vértice p na Figura 2.6
possui 4 arestas e 5 faces incidentes, e portanto não é um vértice regular, nem de borda.
A aresta que conecta os vértices u e v possui três faces incidentes (tuvp, tuvr, tuvt), logo
não é uma aresta regular, nem de borda.
Definição 13. Diagrama de Voronoi Intrínseco. A célula de Voronoi intrínseca de um
ponto p ∈ P é definida pela Equação 2.5.
V(p) = x ∈ S|dS(p,x)≤ dS(q,x),∀q ∈ P☛✡
✟✠2.5
O diagrama de Voronoi intrínseco (intrinsic Voronoi diagram, iVd) de P em S con-
siste na coleção das células de Voronoi intrínsecas de todos os pontos p ∈ P.
18
2.2. DIAGRAMAS DE VORONOI E TRIANGULAÇÕES DE DELAUNAY EMSUPERFÍCIES
Definição 14. Diagrama de Voronoi Restrito. A célula de Voronoi restrita de um
ponto p em S é obtida substituindo a distância dS por dR3 na Equação 2.5, e é denotada
por V |S(p) porque é precisamente a restrição de V (p) para S, sendo V (p) a célula de
Voronoi Euclideana de p ∈ P ⊂ R3. O diagrama de Voronoi restrito (restricted Voronoi
Diagram, rVd) é a coleção de todas as células V |S(p).
Definição 15. Diagrama de Voronoi bem Formado. A propriedade da bola fechada
(closed ball property) foi introduzida por Edelsbrunner e Shah (1994) para descrever
os diagramas de Voronoi restritos em S cujos complexos de Delaunay restritos são ho-
meomorfos a S. Para uma superfície sem bordas, esta propriedade é expressa por três
condições:
• Cada célula de Voronoi é um disco topológico fechado (2-ball);
• A interseção de duas células de Voronoi é vazia ou é uma única aresta de Voronoi
(closed topological 1-ball);
• A interseção de três células de Voronoi é vazia ou é um único ponto (0-ball), ou
seja, um único vértice de Voronoi.
A propriedade da bola fechada requer implicitamente uma condição de posição
geral nos pontos amostrados de modo que a interseção de mais de três células de Voronoi
deve ser necessariamente vazia. Então, é assumido que P está em posição geral.
Edelsbrunner e Shah (1994) mostraram que o complexo de Delaunay restrito é home-
omorfo a S quando rV d satisfaz a propriedade da bola fechada. Dyer (2010) afirma que
a prova apresentada por Edelsbrunner e Shah (1994) não depende na métrica específica
que é empregada para construir o diagrama de Voronoi, e que portanto, se iVd satisfi-
zer a propriedade da bola fechada, então o complexo de Delaunay intrínseco é também
homeomorfo a S.
Dyer (2010) mostra que se existem pelo menos quatro amostras distintas em P, a ter-
ceira condição da propriedade da bola fechada se torna redundante, e define diagrama de
Voronoi bem formado: Um diagrama de Voronoi (restrito ou intrínseco) é bem formado
se ele consiste de pelo menos quatro pontos e satisfaz as duas primeiras condições da
propriedade da bola fechada, citadas no início desta definição.
Definição 16. Triangulação de Delaunay Restrita. Quando o rVd é bem formado, o
complexo de Delaunay restrito é uma malha de triângulos conhecida como triangulação
de Delaunay restrita (restricted Delaunay triangulation, rDT). A rDT é a malha de tri-
ângulos que é obtida quando os vizinhos de Voronoi no rVd são conectados por arestas
19
CAPÍTULO 2. FUNDAMENTOS DE GEOMETRIA COMPUTACIONAL
Figura 2.7 Propriedade da circumesfera euclidiana vazia na Triangulação de Delaunay Restrita:Exemplo unidimensional (Figura baseada em (Dyer, 2010)).
da malha. As faces da rDT são os simplexos Euclideanos duais aos vértices no rVd. A
triangulação de Delaunay restrita também pode ser caracterizada como uma estrutura
que consiste dos triângulos pertencentes à triangulação de Delaunay 3D (D3(P)) para
os quais a aresta de Voronoi dual intercepta S. O ponto de interseção é um vértice de
Voronoi no rVd.
Usando esta última caracterização da rDT, Chew (1993) mostra que os triângulos
de Delaunay restritos para um conjunto de amostras P ⊂ S admitem uma circumesfera
Euclidiana vazia (empty Euclidean circumball) com centro na superfície S, ilustrada pelo
círculo no exemplo uni-dimensional da Figura 2.7. O centro deste círculo, c, é um vértice
de Voronoi no rVd, e é também o ponto em que a aresta de Voronoi dual no diagrama de
Voronoi tri-dimensional de P intercepta a superfície (aresta que passa por c no exemplo
uni-dimensional da Figura 2.7.)
A triangulação de Delaunay restrita é a estrutura de Delaunay mais comumente uti-
lizada para representação de superfícies. Ela foi definida formalmente pela primeira
vez por Edelsbrunner e Shah (1994) e desde então têm sido propostos vários algoritmos
para reconstrução de superfícies e para geração de malhas (meshing) baseados na rDT.
Particularmente, os primeiros algoritmos de reconstrução de superfícies com provas de
que são corretos (Amenta e Bern, 1998; Amenta et al., 2000) utilizaram as ideias de
Edelsbrunner e Shah (1994).
Definição 17. Triangulação de Delaunay Intrínseca. Se o diagrama de Voronoi intrín-
seco (iVd) é bem formado, então o complexo de Delaunay intrínseco é homeomorfo à
superfície S. A malha dual ao iVd é chamada de iDt-mesh (intrinsic Delaunay triangula-
tion Mesh), e para uma amostragem suficiente, esta malha é uma variedade. O iDt-mesh
é a malha com vértices P e cuja conectividade é definida pela triangulação de Delaunay
intrínseca discutida a seguir.
A distância geodésica entre dois pontos p,q ∈ S, denotada por dS(p,q) é o compri-
20
2.2. DIAGRAMAS DE VORONOI E TRIANGULAÇÕES DE DELAUNAY EMSUPERFÍCIES
mento do menor caminho entre eles, sendo que a métrica utilizada para dS não depende
do espaço onde a superfície está inserida (R3). Esta métrica é denominada métrica in-
trínseca, assim como todas as propriedades que não dependem do espaço R3 para serem
definidas. Uma propriedade que depende do espaço R3 para ser definida é denominada
propriedade extrínseca (Dyer, 2010).
Um disco geodésico centrado em c ∈ S com raio r é o conjunto BS(c;r) = {x ∈S|dS(c,x)< r}. Esta notação se refere a discos e bolas abertas, a notação BS se refere ao
disco geodésico fechado, e mais genericamente o fechamento topológico de um conjunto
A é denotado por A.
Para um conjunto de amostras P suficientemente denso, a iDt de P ⊂ S pode ser defi-
nido analogamente à triangulação de Delaunay Euclideana. É preciso que cada triângulo
tenha um circumdisco geodésico vazio: um disco geodésico único que não contenha
pontos amostrados. Leibon e Letscher (2000) propõem critérios de amostragem para
garantir que a iDT seja bem definida. Segundo Dyer (2010), estes mesmos critérios são
suficientes para garantir que existe uma geodésica única de comprimento mínimo entre
cada par de amostras vizinhas em P. A triangulação de S cujas arestas são compostas
por geodésicas é chamada de triangulação geodésica.
Definição 18. Malhas de Delaunay (Delaunay Meshes). Diversos estudos têm con-
siderado tanto a rDT quando a iDT-mesh, mostrando sua importância tanto em teoria
quanto na prática. Entretanto, ambas compartilham um mesmo problema: suas defini-
ções dependem essencialmente da superfície subjacente S, que está sendo aproximada.
Porém, quando se trata de reconstrução de superfícies, o único conhecimento que se tem
sobre S consiste no conjunto de amostras P e, possivelmente, algumas suposições sobre
a densidade de P e a regularidade de S. Ao reconstruir uma malha M, deseja-se mostrar
quão bem M representa S. Se fosse possível demonstrar que M é um rDT ou um iDT-
mesh, seria possível utilizar as propriedades destas estruturas para mostrar que S é uma
boa aproximação de S. Entretanto, em geral, dada uma malha M não existem algoritmos
conhecidos que permitam decidir se M é um rDt ou um iDt −mesh.
Bobenko e Springborn (2007) apresentaram um estudo formal para a triangulação de
Delaunay intrínseca de superfícies planas por partes (piecewise flat surfaces, pwf ). Para
esta tese, pode-se interpretar uma superfície plana por partes como sendo uma malha de
triângulos variedade (manifold) (Dyer et al., 2009).
O conjunto de amostras P constituem os vértices de M. A definição da iDT de
M é baseada na ideia de circumdiscos vazios. A principal diferença é que a iDT do
conjunto de vértices de uma superfície pwf é bem definida sem impor restrições ao
21
CAPÍTULO 2. FUNDAMENTOS DE GEOMETRIA COMPUTACIONAL
conjunto de vértices P. Particularmente, não é exigido que os vértices ou arestas de um
triângulo sejam distintos, permitindo que a triangulação contenha arestas em “loop” que
possuem o mesmo vértice em ambas as extremidades. Também é possível que existam
mais que uma aresta conectando um mesmo par de vértices. Uma triangulação é dita
própria (proper triangulation) caso não possua estas características anômalas. Dyer et al.
(2009) afirma que existem indicações de que a iDT de M será própria se ela for uma boa
representação de uma superfície suave S, suficientemente bem amostrada.
Para caracterizar a triangulação T de uma superfície pwf, foi usado o Lema 9 e a Pro-
posição 10 apresentadas em Bobenko e Springborn (2007): Lema: Uma aresta interior
e de uma triangulação T de uma superfície pwf é localmente Delaunay se e somente se
a soma dos ângulos opostos a e nos triângulos adjacentes não ultrapassa π . Proposição:
Uma triangulação T de uma superfície pwf é uma triangulação de Delaunay se e somente
se todas as arestas interiores de T forem localmente Delaunay. Uma malha que satisfaz
esta proposição é denominada malha auto-Delaunay (self-Delaunay mesh, sDm). Fisher
et al. (2006) apresentaram um algoritmo e uma estrutura de dados para gerar a iDT de
uma malha, que consiste em trocar arestas (edge flips) que não são localmente Delaunay
(non locally Delaunay, nlD).
Em resumo, foram consideradas três estruturas de Delaunay para superfícies distin-
tas: rDT, iDT-mesh e sDm. Estas estruturas resultam da aplicação de métricas: dR3|SxS
(métrica extrínseca em S), dS (métrica intrínseca em S) e dM (métrica intrínseca em M).
Seria possível considerar ainda a métrica extrínseca em S (dR3|MxM), levando à definição
da malha auto-rDT (self-rDT mesh). Entretanto, Dyer (2010) afirma não existir nenhum
algoritmo simples de giro de aresta (edge-flip) para encontrar malhas auto-rDT. A Tabela
2.1 (traduzida de Dyer (2010)) resume as estruturas de Delaunay apresentadas.
Tabela 2.1 Estruturas de Delaunay (tabela traduzida de Dyer (2010))métrica em S em M
extrínseca rDT self-rDTintrínseca iDT-mesh sDm
A estrutura de dados sDm não é tão bem compreendida quanto as mais bem estabele-
cidas rDT e iDT-mesh. Entretanto, Dyer et al. (2009) afirmam que, de maneira intuitiva é
possível dizer que, se P representa uma amostragem suficientemente densa, então existe
uma “boa sDm” que possui as garantias de aproximação desejáveis do rDT e iDT-mesh.
Como a malha de Delaunay pode ser caracterizada por propriedades locais da própria
malha, como ângulos diedros entre arestas, ela possui a vantagem de que pode ser expli-
22
2.3. COMPLEXO DELAUNAY E COMPLEXO DE TESTEMUNHAS
citamente verificada na ausência da superfície S, diferentemente de outras estruturas de
Delaunay que fazem referência explícita a S.
2.3 Complexo Delaunay e Complexo de Testemunhas
A triangulação de Delaunay restrita é o subcomplexo Delaunay mais popular para apro-
ximação de k-variedades em Rd a partir de um conjunto finito de pontos, em dimensões
baixas (k ∈ {1,2} e d ∈ {2,3}). Como definido anteriormente, o complexo de Delau-
nay restrito é definido como sendo o subcomplexo formado pelos simplexos Delaunay
cujas faces de Voronoi duais interceptam a variedade. Este subcomplexo fornece uma
aproximação fiel da variedade subjacente aos pontos amostrados, em termos de topo-
logia, geometria, e quantidades diferenciais (normais, curvaturas, etc.). Isto tudo sob
condições de amostragem que restringem a densidade de amostragem (Amenta, 1998;
Amenta e Bern, 1998; Boissonnat e Oudot, 2005). Estas características explicam o su-
cesso do complexo de Delaunay restrito no contexto de malharização e reconstrução de
curvas e superfícies. Cazals e Giesen (2006) revisam estas abordagens.
Entretanto, abordagens que utilizam o complexo de Delaunay restrito para reconstru-
ção de curvas e superfícies não podem ser facilmente estendidas para dimensões mais al-
tas, devido a duas limitações. Primeiramente, as propriedades estruturais anteriormente
mencionadas não são válidas para variedades de dimensão 3 ou superiores. Particular-
mente, as normais podem ser arbitrariamente incorretas, e principalmente o tipo topoló-
gico do complexo pode ser significantemente diferente do tipo topológico da variedade.
Em segundo lugar, para calcular o complexo de Delaunay restrito é preciso calcular a
triangulação de Delaunay completa, ou pelo menos sua restrição a alguma vizinhança
local d-dimensional. Consequentemente o tempo de reconstrução resultante depende ex-
ponencialmente da dimensão d do ambiente, tornando este complexo uma estrutura de
dados com custo proibitivo na prática.
Para tratar a primeira limitação, Cheng et al. (2005) propuseram a utilização de tri-
angulações de Delaunay ponderadas, baseado no fato de que as propriedades estruturais
do complexo de Delaunay restrito são arbitrariamente ruins na vizinhança de simple-
xos com forma “ruim”, chamados slivers. Então se for possível remover tais slivers,
recupera-se as boas propriedades estruturais destes complexos. Cheng et al. (2005) mos-
traram que isto é possível pela atribuição de pesos cuidadosamente escolhidos para os
pontos. Esta ideia também foi usada em trabalhos subsequentes: Boissonnat e Ghosh
(2010); Boissonnat et al. (2009). Para tratar a limitação relacionada ao tempo de cons-
23
CAPÍTULO 2. FUNDAMENTOS DE GEOMETRIA COMPUTACIONAL
trução do complexo, Boissonnat e Ghosh (2010) propuseram um subcomplexo diferente
da triangulação de Delaunay, chamada complexo tangencial, cuja construção consiste
apenas em calcular a triangulação de Delaunay local em espaços de dimensão k que
tangenciam a variedade nos pontos da amostra. O complexo tangencial é construído
pela união das triangulações locais. Entretanto, o complexo gerado não é uma triangu-
lação de Delaunay restrita, e a possibilidade ou não de recuperá-la a partir do complexo
tangencial ainda é uma questão em aberto (Boissonnat et al., 2011).
Considerando as dificuldades encontradas para o problema de reconstrução de vari-
edades, pesquisadores têm direcionado o foco para um problema análogo que consiste
em inferir invariantes topológicas da variedade. Neste contexto, Vin de Silva (De Silva
e Carlsson, 2004; De Silva, 2008) introduziu o complexo de testemunha (Witness Com-
plex). Dada uma nuvem de pontos W , sua ideia consiste em selecionar um subconjunto
L de pontos, chamados marcos (landmarks), que serão os vértices do complexo a ser
construído, e usar os pontos restantes da amostra para guiar a construção do complexo.
Mais precisamente, um ponto w ∈W é uma testemunha para um simplexo σ se nenhum
ponto de L está mais próximo de w que os vértices de σ , i.e., se existe uma bola com
centro em w que inclui os vértices de σ , e não inclui qualquer outro ponto em L (ver
Figura 2.8). O complexo de testemunha é o maior complexo simplicial que pode ser
montado usando apenas simplexos que possuem testemunhas. A vantagem do complexo
de testemunha é que o teste geométrico para uma amostra ser testemunha requer apenas
comparações de distâncias quadradas. Como consequência, o tempo de construção de
um complexo de testemunha é limitado pelo tamanho da nuvem de pontos de entrada e
não pela dimensão d do espaço.
Desde sua introdução, o complexo de testemunha tem atraído o interesse de pesqui-
sadores (Attali et al., 2007; Boissonnat et al., 2009; Guibas e Oudot, 2008), o que pode
ser explicado por estar proximamente conectado à triangulação de Delaunay e à trian-
gulação de Delaunay restrita. De Silva (2008) mostra que o complexo de testemunha é
sempre um subcomplexo da triangulação de Delaunay Del(L), desde que os pontos este-
jam em algum espaço Euclideano. Objetivando tratar o problema de reconstrução, Attali
et al. (2007) e Guibas e Oudot (2008) consideraram o caso em que os pontos estão em,
ou próximo a, algum k-variedade de Rd , e mostraram que, neste caso, o complexo de
testemunha é igual ao complexo de Delaunay restrito quando k = 1, e um subconjunto
deste quando k = 2.
A seguir, apresenta-se as definições de testemunhas fortes e fracas, que são usadas
na definição alternativa da triangulação de Delaunay (De Silva, 2008).
24
2.3. COMPLEXO DELAUNAY E COMPLEXO DE TESTEMUNHAS
Definição 19. Testemunha Forte. Seja A ⊂ Rd . Seja σ um simplexo com vértices em
A. Diz-se que x ∈ Rd é uma testemunha forte para σ com respeito a A, se:
|x−a| ≤ |x−b|, ∀a ∈ σ e b ∈ A☛✡
✟✠2.6
Observe que esta condição implica que |x−a|= |x−a′|, para todo a,a′ ∈ σ .
Definição 20. Testemunha Fraca. Seja A ⊂ Rd . Seja σ um simplexo com vértices em
A. Diz-se que x ∈ Rd é uma testemunha fraca para σ com respeito a A, se:
|x−a| ≤ |x−b|, ∀a ∈ σ e b ∈ A\σ☛✡
✟✠2.7
Observe: Seja σ = [a0a1...ap] um p-simplexo com vértices em A. Então x é uma tes-
temunhas forte para σ com respeito a A, se e somente se, x é uma testemunha fraca e
adicionalmente |x−a0|= |x−a1|= ...= |x−ap|.
A definição alternativa para a complexo de Delaunay (De Silva, 2008) é:
Definição 21. Complexo de Delaunay Forte. O complexo de Delaunay forte,
Del(A,Rd), é o complexo simplicial abstrato em A definido pela seguinte condição:
σ ∈ Del(A,Rd)⇔ σ possui uma testemunha forte em Rd .
Se σ possui uma testemunha forte x, então x é uma testemunha fraca para cada
subsimplexo τ ≤ σ , sugerindo a seguinte construção:
Definição 22. Complexo de Delaunay Fraco. O complexo de Delaunay fraco,
Wit(A,Rd), é o complexo simplicial abstrato em A definido pela seguinte condição:
σ ∈ Wit(A,Rd)⇔ cada subsimplexo τ ≤ σ
possui uma testemunha fraca em Rd .
A Figura 2.8 ilustra as definições de testemunha forte e testemunha fraca. O ponto
vermelho em (a) é uma testemunha forte (centro Delaunay) para o triângulo azul. Note
todos os pontos do triângulo são equidistantes deste ponto e que não existe nenhum
outro ponto (pontos pretos) dentro do circumcírculo vermelho. (b) O ponto laranja é
uma testemunha fraca para a aresta entre p1 e p2 (azul), uma vez que todos os outrros
pontos (pretos) estão fora do circumcírculo laranja. (c) Analogamente, o ponto laranja
é uma testemunha fraca para o triângulo p1, p2, p3 (azul). Note que a testemunha fraca
não precisa ser equidistante de todos os pontos do simplexo. Para o triângulo azul em
25
CAPÍTULO 2. FUNDAMENTOS DE GEOMETRIA COMPUTACIONAL
p1
p2 p2
p3
p1
p2
p3
q(a) (b) (c)
Figura 2.8 (a) Testemunha Forte; (b,c) Testemunha fraca.
(c) pertencer ao complexo de testemunhas fracas é preciso que cada uma de suas arestas
também possua uma testemunha fraca.
A priori, tem-se que Del(A,Rd)⊆ Wit(A,Rd). De Silva (2008) prova que a inclusão
inversa também é válida, ou seja: Wit(A,Rd) ⊆ Del(A,Rd). Deste modo tem-se que:
Del(A,Rd) = Wit(A,Rd):
Teorema 1. Teorema da testemunha fraca: Seja A ⊂ Rd e seja σ ⊂ A um simplexo.
Então σ possui uma testemunha forte em Rd se e somente se cada subsimplexo τ ≤ σ
possui uma testemunha fraca em Rd .
A partir das definições apresentadas por de Silva, Boissonnat et al. (2011) apresen-
taram definições dos complexos de Delaunay (Del(L,X)) e de testemunha (Wit(L,X)),
do conjunto de pontos de referência (L ⊂W ), com respeito a um subconjunto do espaço
ambiente (X ⊂ Rd). Neste trabalho, os termos testemunha e centro Delaunay são usa-
dos para denotar testemunha fraca e testemunha forte, respectivamente. O complexo
Delaunay restrito é definida por Boissonnat et al. (2011) como:
Definição 23. Complexo de Delaunay Restrito. O complexo de Delaunay de L restrito
a X é o complexo simplicial abstrato, Del(L,X), em L definido por:
σ ∈ Del(L,X)⇔ todo subsimplexo τ ≤ σ possui um centro Delaunay em X .
Se L está em posição geral, i.e, Del(L,Rd) não possui simplexos de dimensão maior
que d, então Del(L,Rd) é uma triangulação de Rd . Particularmente, o mapeamento
natural de Del(L,Rd) em Rd é um mergulho (embedding). No contexto da tese isto
implica que se L está em posição geral em Rd , então para qualquer X ⊆ Rd , Del(L,X)
possui uma realização geométrica natural definida pela inclusão de L em Rd (Boissonnat
et al., 2011). De Silva (2008) mostrou que se X =Rd , então Del(L,X) = Wit(L,X). Este
26
2.3. COMPLEXO DELAUNAY E COMPLEXO DE TESTEMUNHAS
resultado não requer a suposição de posição geral, mas implica que Wit(L,X) é também
naturalmente realizada com um complexo simplicial embutido quando a suposição de
posição geral em L for satisfeita.
Boissonnat et al. (2011) apresentaram a versão relaxada do complexo de testemunha
com base nas definições de testemunhas relaxadas introduzidas por De Silva (2008):
Definição 24. Centro Delaunay Relaxado. Assuma ρ ≥ 0. Um ponto x ∈ X é um
ρ-centro Delaunay para σ ∈ L se
|p− x| ≤ |q− x|+ρ, ∀p ∈ σ e q ∈ L☛✡
✟✠2.8
Note que quanto menor o valor ρ mais o centro Delaunay relaxado se aproxima do
centro Delaunay. Um ρ-complexo Delaunay restrito é definido como:
Definição 25. O ρ-complexo Delaunay de L restrito a X é o complexo simplicial abs-
trato Delρ(L,X), em L definido por:
σ ∈ Delρ(L,X)⇐⇒ todo subsimplexo τ ≤ σ possui um ρ-centro Delaunay em X .
Boissonnat et al. (2011) provaram que o complexo ρ-Delaunay é equivalente ao com-
plexo Delaunay restrito sob determinadas condições estabelecidas no conjunto finito de
amostras (W ) e no conjunto finito de marcos (ou vértices) (L ⊂W ), e se todos os centros
Delaunay são suficientemente protegidos. Proteção significa que todos os demais vérti-
ces estão a uma distância mínima δ do circumcírculo centrado no ρ-centro Delaunay que
inclui todos os vértices do simplexo σ . Um centro Delaunay protegido é formalmente
definido a seguir:
Definição 26. Centro Delaunay protegido. Um ponto x ∈ X é um centro Delaunay
δ -protegido para σ ⊂ L se:
|p− x|< |q− x|−δ ∀p ∈ σ , e q ∈ L
A Figura 2.9 ilustra as definições de centro Delaunay relaxado e protegido. O ponto
vermelho em (a) é um centro Delaunay. O ρ-centro Delaunay (ponto verde) em (b) está
dentro do disco centrado no centro Delaunay com diâmetro ρ . Note que a Equação 2.8
pode se reescrita como: dmin(x,L)≥ dmax(x,σ)−ρ , sendo dmin(x,L) = min||q−x||, q ∈L e dmax(x,σ) = max||p− x||, p ∈ σ . Logo, o circumcírculo tracejado em (b), com
centro no ρ-centro Delaunay, e diâmetro igual a dmax(x,σ)−ρ , é sempre vazio. Note
que o circumcírculo Delaunay (vermelho claro) em (b) não é necessariamente vazio. A
proteção garante que o circumcírculo Delaunay seja vazio, conforme ilustrado em (c).
27
CAPÍTULO 2. FUNDAMENTOS DE GEOMETRIA COMPUTACIONAL
δ
(a) (b) (c)
Figura 2.9 (a) Centro Delaunay; (b) Centro Relaxado; (c) Centro Protegido.
Um importante resultado apresentado por Boissonnat et al. (2011) é a garantia
de equivalência entre os complexos Delaunay restrito e de testemunha, Del(L,M) =
Wit(L,W ), desde que sejam satisfeitas as condições estabelecidas para o conjunto finito
de testemunhas W ⊂ Rd e de pontos de referências L ∈ W . A motivação pra introduzir
Wit(L,W ) é que, neste trabalho, vai-se dispor apenas de um conjunto finito de amostras
W para representar a variedade M. As condições que garantem a equivalência entre
Del(L,M) e Wit(L,W ) dependem da distância mínima entre a variedade e seu eixo me-
dial, denotada por rch(M), e de três parâmetros que controlam o raios de amostragem ε
de W com respeito a M, e λ de L com respeito a W . Estes parâmetros são: ρ - parâme-
tro de relaxamento, fortemente ligado a ε; δ - especifica a proteção dos simplexos; ϒ0,
constante que estabelece um limite inferior para a espessura dos simplexos.
É importante ressaltar que os resultados teóricos apresentados por Boissonnat et al.
(2011) motivaram o desenvolvimento de um algoritmo de aprendizado de topologia ba-
seado no complexo de Delaunay relaxado, que é um subconjunto do complexo de tes-
temunhas relaxado, tendo em vista as garantias teóricas de que este tipo de complexo
fornece uma boa aproximação da variedade alvo M, sob certas condições de amostra-
gem. Entretanto, estas condições podem não ser satisfeitas na prática, e neste caso não
é possível garantir que os complexos simpliciais gerados pelo algoritmo sejam de fato
equivalentes a Del(L,M). A principal limitação observada nas malhas geradas é a pre-
sença de tetraedros e simplexos de maior dimensionalidade em malhas que deveriam
representar uma 2-variedade. Esta limitação é tratada por uma estratégia de perturbação
heurística de vértices e um mecanismo para extração de variedades, que são descritos na
Seção 5 e exemplificados com experimentos na Seção 6.
Os algoritmos de aprendizado de topologia propostos nesta tese estão baseados no
complexo de testemunhas e no complexo de Delaunay relaxado. Estas estruturas estão
relacionadas com os mapas auto-organizáveis de topologia variante no tempo (SOM-
28
2.3. COMPLEXO DELAUNAY E COMPLEXO DE TESTEMUNHAS
TVS, Araujo e Rego (2013)), visto que o teorema de testemunhas fracas (Teorema 1)
foi inspirado no aprendizado Hebbiano Competitivo (CHL), proposto inicialmente por
Martinetz e Schulten (1994), e utilizado pela maioria dos modelos SOM-TVS capazes
de aprender topologias. Martinetz e Schulten (1994) apresentaram o caso particular do
Teorema 1 em que o simplexo σ é uma aresta, ou seja, eles mostraram que Del(L,M) e
Wit(L,W ) possuem o mesmo 1-esqueleto.
Sendo assim, este trabalho propõe uma abordagem para reconstrução de varieda-
des que utiliza um mapa auto-organizável de topologia variante no tempo (SOM-TVS),
cujo algoritmo de aprendizado de topologia é baseado no complexo de testemunhas, que
consiste em uma extensão do CHL, e no complexo de Delaunay relaxado, que é um sub-
conjunto do complexo de testemunhas relaxado. O capítulo seguinte introduz os mapas
auto-organizáveis de topologia variante no tempo (SOM-TVS) e os modelos SOM-TVS
que inspiraram a solução proposta neste trabalho.
29
3Mapas Auto-organizáveis com Estrutura
Variante no Tempo
O primeiro Mapa Auto-organizável foi proposto por Kohonen (1982) para visualização
de dados de alta dimensão. O SOM mapeia dados de alta dimensão em uma grade
regular de baixa dimensão, convertendo relacionamentos complexos entre dados de di-
mensão alta em relacionamentos geométricos mais simples, que podem ser facilmente
visualizados. Desde o início, outra habilidade do SOM é produzir abstrações de dados,
comprimindo dados enquanto preserva os relacionamentos mais relevantes entre eles
(Kohonen, 1998).
O SOM está entre os mais importantes algoritmos de redes neurais artificiais não-
supervisionadas, com um número alto de novos modelos nele baseados e inúmeras apli-
cações em problemas reais (Kaski et al., 1998; Corona et al., 2009; Langer et al., 2011).
Sua estrutura consiste em uma grade m-dimensional (usualmente bi-dimensional), com-
posta de um conjunto de nodos, abstrações de neurônios. Cada nodo possui um vetor de
pesos a ele associado cuja dimensão é igual à dos vetores de entrada. Os nodos adjacen-
tes estão conectados entre si, e são estas conexões que definem o arranjo topológico da
rede (ou mapa), frequentemente retangular ou hexagonal.
Durante o treinamento, os vetores de pesos dos nodos do SOM são ajustados de
modo que nodos adjacentes tenham vetores de pesos mais próximos que nodos distantes,
representando vetores de entrada semelhantes. O algoritmo de treinamento do SOM é
composto basicamente de três passos: competição, cooperação e adaptação. O primeiro
passo consiste em selecionar o nodo vencedor, ou seja aquele que está mais próximo
da amostra atual segundo alguma métrica de distância, comumente a distância Euclidi-
ana. Durante a cooperação, determina-se a vizinhança do nodo vencedor. Durante a
adaptação, os vetores de pesos do nodo vencedor e de seus vizinhos são ajustados para
31
CAPÍTULO 3. MAPAS AUTO-ORGANIZÁVEIS COM ESTRUTURA VARIANTE NOTEMPO
representar melhor a amostra atual.
Apesar da habilidade do SOM para formação de mapas topológicos de uma dada
distribuição de entrada, a pré-definição da topologia e do número de nodos limitam os
mapas que podem ser gerados pelo SOM.
Os valores dos principais parâmetros, como taxa de aprendizado e raio da função de
vizinhança, decrescem de um valor inicial até um valor final, para permitir a convergên-
cia da rede (Erwin et al., 1992). Para definir a função de decaimento apropriada para os
valores da taxa de aprendizado e do raio da função de vizinhança, é preciso determinar
previamente o número máximo de iterações (Erwin et al., 1992). Gradualmente, os valo-
res dos parâmetros são decrementados até que o treinamento alcance os valores finais de
seus parâmetros. A partir de então ocorrem outras iterações mas a taxa de aprendizado
e o raio da função de vizinhança permanecem com o valor final. O processo de treina-
mento é encerrado quando um número máximo de iterações é alcançado, ou quando o
mapa não apresenta mais mudanças significativas (Kohonen, 1998). Logo, o treinamento
pode parar antes do ideal ou se prolongar desnecessariamente.
Como a taxa de aprendizado é decrescente, as modificações passam a ser menos
significativas a cada iteração, de modo que após algumas iterações, o SOM não é ca-
paz de reagir a mudanças na distribuição dos dados de entrada. Se não houver reação
adequada, alguns vetores de pesos (unidades “mortas”) podem ficar presos em regiões
que possuíam alta densidade de probabilidade quando foram inicializados. Como o raio
da vizinhança também decresce com o tempo, estes nodos possivelmente também não
estarão na vizinhança do nodo vencedor, não havendo atualização de seus vetores de
pesos. Se o SOM não consegue mover nodos localizados em regiões com densidade de
probabilidade baixa ou nula, para regiões de alta densidade de probabilidade, então a
distribuição dos nodos no mapa resultante não consegue refletir a distribuição dos dados
de entrada.
Como a estrutura topológica é escolhida previamente, as relações de vizinhança entre
os nodos permanecem as mesmas durante o processo de aprendizado. Se a topologia pré-
definida for adequada à topologia dos dados de entrada, então o SOM consegue produzir
um mapa que preserva topologia, caso contrário, isto não é possível. Em resumo, um
mapeamento preserva topologia quando sinais de entrada localizados próximos um do
outro na variedade de entrada são mapeados em nodos próximos do mapa e vice-versa
(Martinetz e Schulten, 1994). Durante o treinamento do SOM, as conexões da rede
permanecem inalteradas, ou seja, não é possível conectar ou desconectar nodos (Fritzke,
1996). Se a estrutura topológica pré-definida não corresponder à estrutura topológica
32
3.1. MAPAS AUTO-ORGANIZÁVEIS COM ESTRUTURA VARIANTE NO TEMPO
de entrada, então é possível que existam conexões entre nodos com vetores de pesos
significativamente diferentes, os quais representam regiões desconexas do espaço de
entrada. Tais conexões não podem ser removidas pelo SOM.
O erro não supervisionado de um dado nodo si do mapa é uma medida da dissimilari-
dade (ou distância) entre o vetor de pesos associado a si e os vetores de entrada mapeados
em si. Quando este erro é maior que o limite estabelecido pelo usuário, o SOM move si
em direção aos vetores de pesos mapeados nele. Entretanto, o número de nodos no mapa
pode não ser suficiente para representar os dados de entrada com a precisão desejada.
Cada nodo si mapeia um conjunto de dados de entrada, agrupados pelo algoritmo de
treinamento do SOM, que é fortemente baseado na suposição de não correlação entre os
dados que são apresentados, um após o outro, durante o treinamento (Jockusch e Ritter,
1999). Entretanto, em alguns casos ocorrem fortes correlações entre um dado de entrada
e outro que foi apresentado ao mapa imediatamente antes. Por exemplo, quando os da-
dos são gerados pela exploração do espaço de estados ou de características ao longo de
trajetórias contínuas. Neste caso, a performance do SOM costuma ser degradada. Com
taxas de aprendizado baixas, a topologia permanece intacta, mas os nodos ignoram a in-
formação de trajetória apresentada. Com taxas altas, um único nodo “segue” a trajetória,
causando perturbações na topologia e destruindo informações previamente aprendidas
(Jockusch e Ritter, 1999).
Relações hierárquicas entre os dados são comuns em muitas aplicações (Dittenbach
et al., 2001; Rauber et al., 2001, 2002). Tais relações hierárquicas não podem ser repre-
sentadas com um único mapa, como os produzidos pelo SOM. Para realizar este objetivo,
se faz necessário um modelo de rede auto-organizável que seja capaz de aprender e re-
presentar a hierarquia entre os dados de entrada. Este tipo de modelo produz mapas em
diferentes níveis hierárquicos e relaciona estes mapas em uma hierarquia.
3.1 Mapas Auto-organizáveis com Estrutura Variante no
Tempo
Apesar das habilidades do SOM, sua estrutura pré-fixada leva a limitações nos mape-
amentos gerados. Por este motivo, diversas pesquisas têm sido desenvolvidas no sen-
tido de criar novos modelos inspirados no SOM, sem a restrição de depender de uma
estrutura pré-estabelecida, para criar mapeamentos (Fritzke, 1994, 1995b; Martinetz e
Schulten, 1994). A estrutura dos mapas criados por tais modelos varia com o tempo ao
longo do processo de treinamento, logo, estes modelos são chamados de Mapas Auto-
33
CAPÍTULO 3. MAPAS AUTO-ORGANIZÁVEIS COM ESTRUTURA VARIANTE NOTEMPO
organizáveis com Estrutura Variante no Tempo (SOM-TVS - SOM with a Time Varying
Structures). As mudanças incluem o número de nodos do mapa e as conexões entre eles.
A topologia de um objeto diz respeito às características preservadas quando ele é
deformado sem ter partes separadas ou coladas. A estrutura de um mapa é definida pelo
número de nodos presentes no mapa e as conexões entre estes nodos. Alguns mode-
los SOM-TVS possuem estrutura variante no tempo, preservando suas características
topológicas. Este é o caso do modelo denominado Estruturas de Células Crescentes
(Growing Cell Structures, GCS) (Fritzke, 1994) no qual os novos nodos e conexões que
são inseridos ou removidos durante o treinamento, alteram a estrutura do mapa inicial,
porém não alteram suas características topológicas, determinadas pelo mapa inicial. Por
isto, o GCS proporciona redução de dimensionalidade dos dados.
No mesmo ano que o GCS, também foi proposto o TRN (Topology Representing
Networks) (Martinetz e Schulten, 1994), um modelo de mapa auto-organizável com ob-
jetivo diferente do SOM e do GCS, pois em vez de produzir um mapeamento para reduzir
a dimensionalidade dos dados, o objetivo do TRN é aprender a topologia da distribuição
dos dados. Assim, ao invés de gerar mapas com topologia de dimensionalidade fixa, o
TRN gera mapas topologicamente equivalentes à distribuição dos dados de entrada. Para
alcançar este objetivo, o TRN emprega um método de aprendizagem chamado Aprendi-
zado Hebbiano Competitivo (Competitive Hebbian Learning, CHL) (Martinetz e Schul-
ten, 1994), para gerar conexões entre os nodos do mapa. Todavia, a quantidade de nodos
do TRN é pré-definida e permanece constante durante o treinamento.
No ano seguinte, foi proposto o Gás Neural Crescente (Growing Neural Gas, GNG)
(Fritzke, 1995b), que é capaz de aprender a topologia dos dados de entrada, enquanto
adiciona novos nodos ao mapa durante o treinamento. Deste modo, o GNG apresenta
características semelhantes ao GCS e ao TRN. Tanto o GCS quanto o GNG adicionam
nodos ao mapa com uma frequência constante durante todo o treinamento, sempre após
um número pré-determinado de iterações. Em contraposição, Jockusch e Ritter (1999)
e Marsland et al. (2002) propuseram, respectivamente, o Mapa Topológico Instantâneo
(Instantaneous Topological Map, ITM) e o Crescer Quando Necessário (Grow When Re-
quired, GWR), com comportamentos diferentes no que diz respeito à inserção de novos
nodos nos mapas: incluem novos nodos sempre que os nodos existentes não represen-
tarem uma amostra de entrada com a precisão pré-estabelecida. Assim, tanto o ITM
quanto o GWR são capazes de acompanhar mudanças na distribuição dos dados de en-
trada.
Alguns modelos SOM-TVS têm sido desenvolvidos especialmente para seguir dis-
34
3.1. MAPAS AUTO-ORGANIZÁVEIS COM ESTRUTURA VARIANTE NO TEMPO
tribuições de sinais de entrada não-estacionárias (Fritzke, 1997; Marsland et al., 2002),
pois em geral, mesmo os mapas incrementais podem não responder a mudanças rápi-
das na distribuição de probabilidade. Estes mapas são capazes de reagir rapidamente a
mudanças, inserindo novos nodos quando um dado sinal de entrada não pode ser repre-
sentado por nenhum dos nodos do mapa com precisão pré-estabelecida (Marsland et al.,
2002).
Um SOM-TVS que aprende topologia, como o GNG (Fritzke, 1995b), é mais apto
para lidar com estímulos correlacionados, atenuando ou eliminando as distorções topoló-
gicas causadas pelo SOM original Kohonen (1982). O ITM (Jockusch e Ritter, 1999) foi
proposto com este objetivo, por isto não pressupõe independência estatística dos dados
de treinamento, e constrói rapidamente a topologia, produzindo mapas que representam
bem os dados de treinamento ainda que estes estejam fortemente correlacionados (Mole
e Araújo, 2010).
As unidades “mortas” em um SOM-TVS podem ser interpretadas como um tipo de
memória da forma anterior da distribuição de dados (Fritzke, 1997). Entretanto, existem
aplicações que não necessitam deste tipo de memoria e requerem um modelo SOM-TVS
capaz de seguir a distribuição de dados em cada momento, usando um mapa de tamanho
limitado. Neste caso, as unidades “mortas” devem ser identificadas e removidas, dando
lugar a novos nodos, localizados nas regiões em que a densidade de probabilidade atual
é alta (Fritzke, 1997).
Dittenbach et al. (2002) propuseram o GHSOM (Growing Hierarchical Self-
organizing Maps), com o objetivo de representar dados de entrada organizados de forma
hierárquica. Para isto, o GHSOM gera não apenas um mapa, mas um conjunto de mapas
organizados em hierarquia.
As mudanças na estrutura dos modelos SOM-TVS dependem dos estados atuais e
passados durante o processo de treinamento do mapa. Assim sendo, uma mesma entrada
pode levar a diferentes saídas, diferentes mudanças na estrutura do mapa, de acordo
com a história da construção do mapa durante o aprendizado. Por exemplo, o local de
inserção de um novo nodo depende do erro que foi acumulado pelos nodos da rede até o
momento.
Os modelos SOM-TVS não exigem definição prévia do número de nodos nem da
topologia do mapa. Apesar de ser possível remover alguns nodos durante o treinamento,
a tendência natural é de crescimento do mapa, uma vez que nos modelos SOM-TVS
a inserção de novos nodos é usualmente mais frequente que a remoção de nodos. Por
este motivo, modelos com esta propriedade são chamados de mapas com crescimento
35
CAPÍTULO 3. MAPAS AUTO-ORGANIZÁVEIS COM ESTRUTURA VARIANTE NOTEMPO
incremental, ou mapas incrementais (Fritzke, 1996). A inserção de novos nodos é di-
retamente guiada pelos dados de entrada, assim, a estrutura dos mapas resultantes deve
representar a distribuição dos dados de entrada melhor do que seria possível com uma
topologia pré-definida.
Uma característica favorável da maioria dos mapas incrementais é sua taxa de apren-
dizado constante, não sendo necessário definir um esquema de decaimento para este
parâmetro. Além disto, o processo de aprendizado pode continuar até que algum cri-
tério de performance seja atingido, ou até que um número máximo de nodos no mapa
seja alcançado. Como a taxa de aprendizado não decresce durante o treinamento, os
mapas incrementais continuam a aprender os dados de entrada à mesma taxa durante
todo o processo de aprendizado. Por isto, estes mapas podem reagir a mudanças lentas
na distribuição dos dados de entrada.
Este capítulo descreve os modelos SOM-TVS relacionados ao modelo GSRM, pro-
posto neste trabalho. Um parte importante deste trabalho de doutorado foi uma pesquisa
sobre os modelos SOM-TVS existentes e suas aplicações, para a partir daí serem seleci-
onados os modelos mais adequados ao problema de reconstrução de superfícies. Como
resultado deste trabalho de pesquisa, foi escrito um artigo (Araujo e Rego, 2013) onde se
pode encontrar uma revisão mais abrangente sobre os modelos SOM-TVS e suas aplica-
ções, juntamente com um framework para descrição destes modelos. Para descrever os
modelos, o processo de aprendizado de um SOM-TVS foi organizado em procedimen-
tos:
1. Procedimento de inicialização do mapa: Consiste em definir o número de nodos
inicial, inicializar os vetores de pesos, estabelecer as conexões iniciais e inicializar
os parâmetros de treinamento.
2. Procedimento de competição entre os nodos: Uma amostra ξ é apresentada ao
mapa e os nodos competem para decidir quais são os mais próximos a ξ.
3. Procedimento de adaptação dos vetores de pesos: Os vetores de pesos dos nodos
são adaptados.
4. Procedimento de atualização de topologia: A topologia do mapa é atualizada pela
adição e remoção de conexões. A remoção de conexões pode resultar em remoção
de nodos.
5. Procedimento de atualização de nodos: Nodos podem ser inseridos ou removidos
do mapa. As conexões do mapa podem mudar em consequência da inserção ou
36
3.2. ESTRUTURAS DE CÉLULAS CRESCENTES - GCS
remoção dos nodos.
6. Procedimento de parada: Estabelece os critérios para encerrar o treinamento.
A notação utilizada neste capítulo é apresentada na Tabela 3.1.
3.2 Estruturas de Células Crescentes - GCS
O modelo denominado Estruturas de Células Crescentes (Growing Cell Structures -
GCS) (Fritzke, 1994; Wang e Sun, 1999; Wong e Cartwright, 2005) tem por objetivo
gerar um mapeamento de um espaço de entrada (M) em um mapa A de topologia k-
dimensional. Assim, se a dimensionalidade do mapa A for menor que a dimensionali-
dade do espaço de entrada o GCS proporciona redução de dimensionalidade.
Os mapas GCS são constituídos por simplexos de dimensão k previamente escolhida.
Sendo k = 1 para linhas, k = 2 para triângulos, k = 3 para tetraedros, k = 4 em diante
para hipertetraedros de maior dimensionalidade. Todos os nodos si do mapa possuem
um contador de sinais (τsi) ou contador de erro (Esi). O treinamento do GCS é descrito
a seguir.
1. Inicialização do mapa.
• Número de nodos inicialmente contidos no mapa: |A|= k+1.
• Os vetores de pesos dos nodos são inicializados aleatoriamente ou com veto-
res de entrada aleatoriamente escolhidos.
• As conexões entre os nodos devem formar um simplexo de dimensão k, que
possui |C|= (k+1)k/2 conexões.
• Os seguintes parâmetros devem ser inicializados: λ , εn, εb, β , α , Nmax.
2. Competição entre os nodos. Em cada iteração t, um sinal de entrada ξ(t) é es-
colhido de acordo com a função de distribuição de probabilidade p(ξ). O GCS
seleciona apenas um nodo vencedor (s0), que é o nodo mais próximo à amostra
ξ(t) de acordo com a distância Euclidiana. Ou seja, o nodo s0 satisfaz a condição
descrita na Equação 3.1.
s0 = argmin{d(ξ(t),wsi)}, ∀si ∈ A☛✡
✟✠3.1
37
CAPÍTULO 3. MAPAS AUTO-ORGANIZÁVEIS COM ESTRUTURA VARIANTE NOTEMPO
onde d(.) é a distância Euclidiana.
As variáveis contador de sinais e/ou contador de erro do nodo vencedor precisam
ser adaptadas, para refletir o fato de que a amostra atual está sendo representada
por este nodo.
O nodo vencedor s0 tem seu contador de sinais, τs0 incrementado em uma unidade,
conforme a Equação 3.2.
τs0(t +1) = τs0(t)+1☛✡
✟✠3.2
Se um contador de erro for utilizado em lugar do contador de sinais dos nodos,
este deve ser atualizado de acordo com a Equação 3.3.
Es0(t +1) = Es0(t)+ ||ξ−ws0||2☛✡
✟✠3.3
3. Adaptação dos vetores de peso. Os vetores de pesos do nodo vencedor (s0) e de
seus vizinhos topológicos (sn ∈ Ns0) são movidos em direção à amostra ξ(t). O
vetor de pesos do nodo vencedor é movido em direção à amostra ξ(t) com uma
taxa εb:
ws0(t +1) = ws0(t)+ εb(ξ(t)−ws0(t))☛✡
✟✠3.4
E os vetores de pesos dos vizinhos topológicos (sn) do nodo vencedor são movidos
em direção à amostra ξ(t) com uma taxa εn:
wsn(t +1) = wsn(t)+ εn(ξ(t)−wsn(t)), ∀sn ∈ Ns0
☛✡
✟✠3.5
4. Atualização de topologia. O GCS não apresenta uma etapa específica de
atualização de conexões, pois estas são determinadas pela topologia previamente
escolhida para o mapa. Conexões são criadas e removidas apenas quando
acontece a atualização de nodos, para preservar as características topológicas da
38
3.2. ESTRUTURAS DE CÉLULAS CRESCENTES - GCS
rede, que deve consistir de simplexos k-dimensionais durante todo o aprendizado.
5. Atualização de nodos. Um novo nodo sr é inserido na rede sempre após um nú-
mero fixo (λ ) de iterações. A posição onde o novo nodo deverá ser inserido é deci-
dida com base nos contadores de sinais dos nodos ou em seus contadores de erro.
Nodos cujos vetores de pesos estão localizados em regiões do espaço de entrada
com densidade de probabilidade muito baixa devem ser removidos. Após a inser-
ção e remoção de nodos, as conexões do mapa devem ser atualizadas mantendo
sua estrutura k-dimensional. As Equações 3.6 e 3.7 descrevem, respectivamente,
como ficam o conjunto de nodos e o conjunto de conexões após este procedimento.
A(t +1) = A(t)∪{sr}\NR(t)☛✡
✟✠3.6
onde NR(t) é o conjunto de nodos removidos na iteração t.
C(t +1) =C(t)∪{csrsq,csrs f ,Csrsn}\{csqs f }\CR(t)☛✡
✟✠3.7
onde Csrsn é o conjunto de conexões csrsn , ∀sn ∈ Nsq ∩Ns f ; e CR(t) é o conjunto de
conexões removidas como consequência da remoção de nodos na iteração t.
• Inicialização do vetor de pesos do novo nodo:
O novo nodo (sr) é inserido entre dois nodos sq e s f já existentes no mapa, es-
colhidos com base nos contares de sinais (Fritzke, 1994) ou de erro (Fritzke,
1996) dos nodos. A utilização do contador de erro permite que as regiões do
espaço de entrada com maior densidade de probabilidade sejam representa-
das por uma maior quantidade de nodos. Assim, para distribuições de pro-
babilidade com densidade de probabilidade não uniforme, o erro quadrado
médio do mapeamento produzido pela rede é menor quando o contador de
erro é mais adequado (Fritzke, 1994).
O vetor de pesos wsr é inicializado de acordo com a Equação 3.8:
wsr = 0.5(wsq +ws f )☛✡
✟✠3.8
Contadores de sinais: Os contadores de sinais de cada nodo fornecem uma
estimativa de p(ξ), chamada de frequência relativa de sinal, e calculada de
39
CAPÍTULO 3. MAPAS AUTO-ORGANIZÁVEIS COM ESTRUTURA VARIANTE NOTEMPO
acordo com a Equação 3.9.
hsi =τsi
∑s j∈A τs j
☛✡
✟✠3.9
A inserção de um novo nodo deve acontecer entre o nodo sq com maior
valor de hsi , e seu vizinho topológico mais distante (s f ), de acordo com a
distância Euclidiana.
Contadores de erro: De maneira alternativa ao contador de sinais, o erro
de quantização gerado por um nodo pode ser usado como critério para
determinar a posição onde um novo nodo deve ser inserido. Neste caso,
o novo nodo é inserido entre o nodo sq com maior contador de erro e seu
vizinho topológico (s f ) mais distante.
• Remoção de nodos: Sempre que um novo nodo é inserido, o GCS verifica
se há nodos supérfluos. Um nodo é considerado supérfluo se sua posição
(vetor de pesos) representa uma região do espaço de entrada com densidade
de probabilidade (p(ξ)) muito baixa.
De maneira geral, p(ξ) é desconhecido, porém é possível obter uma esti-
mativa local ( p̃si) de p(ξ) próxima a um nodo si através da relação entre a
frequência de sinal relativa do nodo e o tamanho de seu campo receptivo
|Fsi|, conforme a Equação 3.10, sendo o valor de |Fsi| calculado de acordo
com uma aproximação apresentada por Fritzke (1994). Os nodos cujos valo-
res de p̃si estiverem abaixo de um limiar µ são removidos.
p̃si =hsi
|Fsi|☛✡
✟✠3.10
• Arranjo das Conexões: Quando um novo nodo é inserido, ele precisa ser
conectado a outros nodos de modo a manter a estrutura topológica da rede,
que deve consistir de simplexos k-dimensionais. Para isto, o nodo sr é
conectado a sq, a s f e aos nodos conectados a ambos sq e s f , os quais
compõem os simplexos que possuem os vértices sq e s f .
Para manter a estrutura topológica da rede após a remoção de um nodo,
40
3.2. ESTRUTURAS DE CÉLULAS CRESCENTES - GCS
basta remover todos os simplexos dos quais o nodo removido faz parte.
• Adaptação de variáveis locais. A inserção de um novo nodo (sr) resulta na
criação de uma nova região de Voronoi. Ao mesmo tempo, as regiões de
Voronoi (Fsn) dos vizinhos topológicos de sr diminuem. Assim sendo, estas
mudanças precisam ser refletidas no valor dos contadores de sinais destes
nodos, que sofrem a variação descrita pela Equação 3.11:
∆τsn =|F(new)
sn |− |F(old)sn |
|F(old)sn |
τsn, ∀sn ∈ Nsr
☛✡
✟✠3.11
onde |Fsn| é o volume n-dimensional de Fsn . Fritzke (1994) descreve como
calcular uma aproximação para |Fsn|.
O valor do contador de sinal do nodo sr é inicializado de acordo com a Equa-
ção 3.12.
τsr =− ∑si∈Nsr
∆τsi
☛✡
✟✠3.12
Analogamente, quando um novo nodo é inserido o erro de quantização de
seus vizinhos são reduzidos, conforme mostra a Equação 3.13:
∆Esn =α
|Nsn |Esr ∀sn ∈ Nsr
☛✡
✟✠3.13
O erro do novo nodo é inicializado de acordo com a Equação:
Esr =1
Nsr
|Nsn |∑n=1
Esn
☛✡
✟✠3.14
Em cada iteração do treinamento, os contadores de sinais e/ou contadores de
erro de todos os nodos são decrementados, conforme Equação 3.15, para evi-
tar que os valores destas variáveis cresçam indefinidamente e para enfatizar
valores mais recentemente acumulados.
41
CAPÍTULO 3. MAPAS AUTO-ORGANIZÁVEIS COM ESTRUTURA VARIANTE NOTEMPO
vsi(t +1) = vsi(t)+β ∗ vsi(t) ∀si ∈ A☛✡
✟✠3.15
onde vsi denota τsi ou Esi .
6. Critério de Parada. O treinamento do GCS encerra quando um número máximo
de nodos (Nmax) é alcançado ou alguma medida de performance é atingida (Fritzke,
1996).
3.3 Redes de Representação de Topologia - TRN
O modelo denominado Redes de Representação de Topologia (Topology Representing
Networks - TRN) (Martinetz e Schulten, 1994) é capaz de distribuir um conjunto de
nodos de acordo com alguma distribuição de probabilidade e de gerar uma topologia
entre estes nodos de dimensionalidade igual à dimensionalidade da variedade de entrada
(M). Para isto, o TRN combina os algoritmos Neural Gas e o Aprendizado Hebbiano
Competitivo (Competitive Hebbian Learning - CHL), respectivamente para distribuir os
vetores de pesos e aprender topologia.
1. Inicialização do Mapa.
• Número de nodos inicialmente contidos na rede: |A| é previamente definido
pelo usuário e não muda durante o treinamento.
• Inicialização dos vetores de peso: Em Martinetz e Schulten (1994) é dito
apenas que devem ser atribuídos valores iniciais aos vetores de pesos, sem
estabelecer restrições para este procedimento.
• Conexões iniciais entre os nodos: Inicialmente não existem conexões entre
os nodos (C =∅)
• Os parâmetros seguintes devem ser inicializados: εi e ε f , ηi e η f , tmax,
agemax.
2. Competição entre os nodos. Em cada iteração (t) de aprendizado, uma amostra
ξ(t) ∈ Ξ é selecionada com igual probabilidade para cada ξ. O TRN ordena os
nodos da rede de acordo a distância Euclidiana entre seus vetores de pesos e a
amostra ξ(t). conforme mostrado na Equação 3.16.
42
3.3. REDES DE REPRESENTAÇÃO DE TOPOLOGIA - TRN
d(ξ(t),ws0)< d(ξ(t),ws1)< ... < d(ξ(t),ws|A|−1)
☛✡
✟✠3.16
onde d(.) é a distância Euclidiana.
3. Adaptação dos vetores de pesos. Os vetores de pesos são atualizados proporci-
onalmente à posição dos nodos na ordenação criada durante a competição entre
nodos. O novo vetor de pesos atribuído a cada nodo é determinado pela Equação
3.17.
wsi(t +1) = wsi(t)+ ε(t)·exp−rsi/η(t)(ξ(t)−wsi), i = 1, ..., |A|☛✡
✟✠3.17
Onde rsi refere-se a posição ocupada por si na ordenação criada pelo procedimento
de competição entre os nodos: rs0 = 1, rs1 = 2,..., rs|A|−1= |A|; ε(t) e η(t) denotam
respectivamente os valores da taxa de aprendizado e do raio de vizinhança na
iteração t.
Os valores de ε(t) e η(t) são calculados pela Equação 3.18.
g(t) = gi(g f
gi)t/tmax
☛✡
✟✠3.18
em que g denota ε ou η .
Note que, quanto menor o valor de (rsi), mais significante será a adaptação do
vetor de pesos deste nodo.
4. Atualização de topologia. O TRN pode criar e remover conexões durante o
aprendizado. O aprendizado Hebbiano Competitivo governa a criação das
conexões entre os nodos. De acordo com o CHL, o nodo s0 e o nodo s1 com
vetores de pesos mais próximo (ws0) e segundo mais próximo (ws1) a ξ(t) pela
distância Euclidiana, são conectados. Algumas conexões criadas no início do
treinamento podem se tornar inadequadas em um momento posterior, porque a
relação de vizinhança entre os nodos conectados deixaram de existir devido às
mudanças em seus vetores de pesos. O TRN identifica estas conexões por meio
de uma variável (idadesis j) associada a cada conexão csis j . Um valor de idadesis j
maior que um limiar idademax indica uma aresta inadequada.
43
CAPÍTULO 3. MAPAS AUTO-ORGANIZÁVEIS COM ESTRUTURA VARIANTE NOTEMPO
O algoritmo 1 descreve como o TRN cria e remove conexões. As conexões não
são direcionadas, ou seja, se os nodos si e s j estão conectados, não faz diferença
denotar a conexão por csis j ou cs jsi . A aplicação deste algoritmo resulta em um
novo conjunto de conexões C(t +1) definido pela Equação 3.19.
C(t +1) =
C(t)∪{cs0,s1}\CI se ∄ cs0,s1
C(t)\CI se ∃ cs0,s1
☛✡
✟✠3.19
onde CI é o conjunto de todas as conexões csis j com idadesis j ≥ idademax
Algoritmo 1 Algoritmo do TRN para aprendizado de conexões: usa CHL
1 Se os nodos s0 e s1 não estiverem conectados, crie a conexão cs0s1 . A idade da novaconexão é inicializada com zero: idades0s1 = 0.
2 Se a conexão cs0s1 já existir, ela é reforçada, atribuindo zero ao valor de sua idade:idades0s1 = 0.
3 A idade de todas as outras conexões do nodo s0 são incrementadas, conforme Equa-ção 5.1:
idades0si(t +1) = idades0si(t)+1, ∀si ∈ Ns0
☛✡
✟✠3.20
4 Se a idade de alguma conexão ultrapassar o limiar idademax, esta conexão é remo-vida.
5. Atualização de nodos. No modelo TRN o número de nodos é fixo, ou seja, não
existe inserção nem remoção de nodos na rede.
6. Critério de parada. O treinamento do TRN é encerrado após um número máximo
(tmax) de iterações (Fritzke, 1996).
3.4 Gas Neural Crescente - GNG
O Gas Neural Crescente (Growing Neural Gas - GNG) (Fritzke, 1995b) é um modelo
incremental que possui a habilidade de aprender topologia, possuindo características
semelhantes ao GCS e ao TRN.
1. Inicialização do mapa.
• A rede A é inicializada com dois nodos: A = {si,s j}.
44
3.4. GAS NEURAL CRESCENTE - GNG
• Os vetores de pesos wsi e ws j são escolhidos aleatoriamente.
• O conjunto de conexões é iniciado com uma conexão: C = {csis j}.
• Os seguintes parâmetros devem ser inicializados pelo usuário: εb, εn, λ ,
agemax, Nmax, β , α .
2. Competição entre os nodos. Em cada iteração t, um sinal de entrada ξ(t) é gerado
de acordo com a distribuição p(ξ). O GNG seleciona dois vencedores, s0 e s1,
respectivamente os nodos com vetor mais próximo e segundo mais próximo a ξ(t)
segundo a distância Euclidiana. Os nodos s0 e s1 satisfazem as condições descritas
nas Equações 3.1 e 3.21 respectivamente.
s1 = argmin{d(ξ(t),wsi)}, ∀si ∈ A\{s0}☛✡
✟✠3.21
onde d(.) é a distância Euclidiana.
O contador de erro de s1 é incrementado segundo a Equação 3.3.
3. Adaptação dos vetores de peso. O nodo vencedor (s0) e seus vizinhos topológicos
(sn) têm seus vetores de pesos movidos em direção a ξ(t) com taxas respectiva-
mente iguais a εb e εn, conforme Equações 3.4 e 3.5.
4. Atualização de topologia. A adaptação de conexões é feita seguindo o mesmo pro-
cedimento adotado pelo modelo TRN, que utiliza o Aprendizado Hebbiano Com-
petitivo para estabelecer conexões entre os nodos, e um limiar de idade (idademax)
para remover conexões que se tornaram inadequadas durante o treinamento. Sendo
que no GNG, se após a remoção de uma aresta restarem nodos isolados, ou seja
sem conexões com outros nodos, este nodos isolados devem ser removidos. O
procedimento de adaptação das conexões resulta em um novo conjunto de cone-
xões C(t + 1), definido na Equação 3.19, e um novo conjunto de nodos A(t + 1),
definido na Equação 3.22.
A(t +1) = A(t)\NI☛✡
✟✠3.22
sendo NI o conjunto de nodos isolados após a remoção de arestas inadequadas.
45
CAPÍTULO 3. MAPAS AUTO-ORGANIZÁVEIS COM ESTRUTURA VARIANTE NOTEMPO
5. Atualização de nodos. Um novo nodo é inserido na rede GNG sempre após um
número fixo (λ ) de iterações. O novo nodo (sr) é inserido entre o nodo com
maior contador de erro (sq) e seu vizinho topológico com maior contador de erro
(s f ). O contador de erro dos nodos sq e s f (vizinhos de sr) são decrementados
multiplicando-os por uma contante α (Equação 3.23). O contador de erro do nodo
sr é inicializado com o novo valor do contador de erro de sq: Esr = Esq(t +1).
Esi(t +1) = α ∗Esi(t) ∀si ∈ sq,s f
☛✡
✟✠3.23
• Inicialização do vetor de pesos do novo nodo: O vetor de pesos de sr é
interpolado a partir dos vetores de pesos dos nodos sq e s f , de acordo com a
Equação 3.8.
• Arranjo das Conexões após a inserção de nodo. Quando um nodo é
inserido é preciso conectá-lo com outros nodos já existentes na rede.
Para isto, o novo nodo sr é conectado aos nodos sq e s f , resultando em
duas novas conexões: csrsq e csrs f . A antiga conexão entre sq e s f é removida.
O conjunto de nodos e o conjunto de conexões resultantes após o procedimento de
adaptação de nodos são descritos pelas Equações 3.24 e 3.25, respectivamente.
A(t +1) = A(t)∪{sr}☛✡
✟✠3.24
C(t +1) =C(t)∪{csrsq,csrs f }\{csqs f }☛✡
✟✠3.25
6. Critério de Parada. Os passos 2 a 6 são repetidos até que um número máximo
de nodos (Nmax) seja alcançado, ou alguma medida de performance da rede seja
atingida.
3.5 Mapa Topológico Instantâneo - ITM
O Mapa Topológico Instantâneo (Instantaneous Topological Map - ITM) Jockusch e Rit-
ter (1999) é um modelo SOM-TVS apropriado para a rápida formação de mapas de re-
presentação de topologia (topology representing maps) para dados de entrada com forte
46
3.5. MAPA TOPOLÓGICO INSTANTÂNEO - ITM
correlação serial. O ITM não utiliza idade de conexões nem contador de erro dos nodos,
pois é capaz de se adaptar instantaneamente quando novos sinais são apresentados, por
isso este modelo recebeu o nome de Mapa Topológico Instantâneo. Uma vantagem do
ITM em relação a outros modelos SOM-TVS é que apenas dois parâmetros precisam ser
inicializados.
1. Inicialização do mapa.
• A rede é inicializada com dois nodos: A = {si,s j}.
• Jockusch e Ritter (1999) não restringe a maneira como os vetores de pesos
devem ser iniciados.
• O conjunto de conexões é iniciado com uma conexão: C = {csis j}• Os seguintes parâmetros precisam ser inicializados: εb, emax
O parâmetro emax é específico do ITM e não está na Tabela 3.1. Este parâme-
tro controla a precisão com que o mapa deve representar os dados de entrada.
2. Competição entre os nodos. A cada iteração (t), uma amostra (ξ(t)) é gerada
pela exploração do espaço de características ou estados ao longo de trajetórias
contínuas. O ITM encontra os nodos s0 e s1 com os vetores de pesos mais
próximos à ξ(t) de acordo com a distância Euclidiana, satisfazendo as Equações
3.1 e 3.21.
3. Adaptação dos vetores de peso. O ITM move apenas o vetor de pesos (ws0) do
nodo vencedor direção à ξ(t) com uma taxa εb, conforme a Equação 3.4.
4. Atualização de topologia. A regra adotada pelo ITM para criação de arestas é o
CHL. Sempre que um nodo s0 é selecionado vencedor, cada uma de suas conexões
(cs0sn) é considerada candidata para remoção. A conexão cs0sn é removida se s1
(segundo vencedor) estiver dentro da Esfera de Thales com diâmetro ||ws0 −wsn ||.O Algoritmo 2 descreve o procedimento para adaptação de conexões. Após a
remoção de conexões, remove-se os nodos isolados, caso existam.
As Equações 3.19 e 3.22 descrevem, respectivamente, o conjunto de conexões
e o conjunto de nodos após a adaptação de conexões. Na equação 3.19, CI é o
47
CAPÍTULO 3. MAPAS AUTO-ORGANIZÁVEIS COM ESTRUTURA VARIANTE NOTEMPO
Algoritmo 2 Algoritmo de Adaptação de Conexões do ITM
1 Caso ainda não exista, cria-se uma conexão entre os nodos s0 e s1.
2 Para cada nodo sn ∈ Ns0 , verifica-se se o vetor de pesos ws2 se encontra dentro daesfera de Thales com diâmetro ||ws1 - wsn||.2.1 Se este for o caso, a conexão cs0sn é removida.
2.2 Se após a remoção da conexão cs0sn não existir mais nenhuma conexão inci-dente no nodo sn, este nodo também é removido.
conjunto das conexões que satisfazem a condição 2 do Algoritmo 2.
5. Atualização de nodos. Em cada iteração, um novo nodo pode ser adicionado ao
mapa, caso sejam satisfeitas duas condições: (a) a amostra ξ(t) se encontra fora
da esfera de Thales com diâmetro ||ws0 - ws1 ||; (b) a amostra ξ(t) se encontra fora
da esfera com centro em ws0 e raio emax. A primeira condição evita que o novo
nodo torne inválida a recém criada conexão cs0s1 . A segunda condição determina a
precisão do mapa gerado. Quanto menor o valor de emax, maior será a frequência
com que novos nodos são inseridos.
• Inicialização do vetor de pesos do novo nodo: O novo nodo (sr) é inserido
na mesma posição que ξ(t), ou seja:
wsr = ξ(t)☛✡
✟✠3.26
• Arranjo das Conexões após a inserção de nodo. O novo nodo (sr) é
conectado ao nodo vencedor (s0).
• Remoção de nodos: Como os nodos se movimentam durante o treinamento,
eles podem ficar muito próximos um do outro, e neste caso, um deles deve
ser removido. Se os vetores ws0 e ws1 estiverem a uma distância menor que12emax, então o nodo s1 é removido. Consequentemente, todas as arestas de
s1 também são removidas.
O conjunto de nodos e o conjunto de conexões resultantes após a adaptação de
nodos são definidos nas Equações 3.6 e 3.27, respectivamente.
48
3.5. MAPA TOPOLÓGICO INSTANTÂNEO - ITM
C(t +1) =C(t)∪{csrs0}\CR(t)☛✡
✟✠3.27
onde CR(t) é o conjunto de conexões removidas em decorrência da remoção de
nodos na iteração t.
6. Critério de Parada. Em Jockusch e Ritter (1999) o critério de parada não é apre-
sentado. Pode ser utilizada alguma medida de performance ou algum critério ba-
seado no número de nodos no mapa.
49
CAPÍTULO 3. MAPAS AUTO-ORGANIZÁVEIS COM ESTRUTURA VARIANTE NOTEMPO
Tabela 3.1 Notação usada para descrever os modelos SOM-TVS.
Elemento Descrição
A Conjunto de nodos da rede neural ou mapa|A| Número de nodos em Aξ Vetor de entrada, amostra, estímulo, ou sinal de entradaΞ Conjunto de vetores de entrada|Ξ| Número de elementos em Ξ
p(ξ) Distribuição de probabilidade dos vetores de entradasi Nodo, vértice, ou unidade
wsi Vetor de pesos associado ao nodo si
C Conjunto de conexões|C| Número de conexões em C
csi,s j Aresta ou conexão entre si e s j
Nsi Conjunto de vizinhos topológicos do nodo si
|Nsi| Número de vizinhos topológicos do nodo si
idadesi,s j Idade da conexão csi,s j
idademax Idade máxima permitida para conexões da redeEsi Contador de erro do nodo si
τsi Contador de sinal do nodo si
tmax Número máximo de iteraçõesNmax Número máximo de nodos
εi Valor inicial de taxas de aprendizado decrescentesε f Valor final de taxas de aprendizado decrescentesηi Valor inicial de raios de vizinhança decrescentesη f Valor final de raios de vizinhança decrescentesεb Taxa constante de aprendizado dos nodos vencedoresεn Taxa constante de aprendizado dos vizinhos do vencedorU Conjunto de vetores de pesos que sofrem adaptação.|U | Número de elementos em U .λ Número de passos de adaptação até a inserção de um novo nodoβ Taxa para decrementar o contador de erro dos nodos em cada iteraçãoα Taxa de decremento de contadores de erro quando um novo nodo é inserido
50
4Modelos SOM-TVS para Reconstrução
de Superfícies
A reconstrução de superfícies, vista como um problema de aprendizado, pode ser resol-
vida por métodos baseados em Mapas Auto-organizáveis, devido à habilidades destes
mapas para arrastar uma determinada estrutura, como uma malha de polígonos, em dire-
ção a um conjunto de pontos de entrada.
Os Mapas Auto-organizáveis suportam parcialmente a representação de malha de
polígonos: Os nodos do mapa correspondem aos vértices da malha; as conexões entre os
nodos correspondem às arestas da malha. O conceito de faces de uma malha de polígo-
nos não está presente na representação dos Mapas Auto-organizáveis, porém podem ser
facilmente identificadas em um modelo de estrutura fixa (e.g., Kohonen, 1982), ou po-
dem ser vista como blocos básicos de construção de mapas com topologia pré-definida,
por exemplo, os triângulos em um mapa GCS. Outros modelos SOM-TVS não possuem
um componente correspondente às faces de uma malha de polígonos, como é o caso do
TRN e do GNG.
Hoffmann e Varady (1998) propuseram o uso do SOM para gerar uma grade quadri-
lateral seguindo a estrutura espacial dos pontos de entrada. A grade gerada pelo SOM é
fornecida como entrada para outros métodos, como B-spline, Bèzier ou NURBS. O nú-
mero de vértices da grade aprendida pelo SOM é pré-fixado, sendo esta uma limitação
do SOM. Para solucionar esta limitação, Varady et al. (1999) utiliza uma variação deno-
minada Grade Crescente (Growing Grid), proposta por Fritzke (1995a), com o mesmo
propósito. Outros modelos SOM-TVS produzem mapas cujas estruturas coincidem com
as malhas usadas para representar superfícies. Este é o caso do GSRM, proposto neste
trabalho, e dos modelos SOM-TVS que serão descritos neste capítulo.
A estrutura fixa do SOM implica em dificuldades para a aproximação de estrutu-
51
CAPÍTULO 4. MODELOS SOM-TVS PARA RECONSTRUÇÃO DE SUPERFÍCIES
ras não convexas nas superfícies de objetos reais. Como consequência, as superfícies
reconstruídas podem conter vértices ou triângulos localizados em regiões onde a densi-
dade de pontos de entrada é vazia ou muito baixa, mas que estão localizadas entre regiões
densas. Para eliminar estes vértices e triângulos Yu (1999) e Brito et al. (2008) aplicam
operadores de malha para adaptar melhor a malha produzida pelo SOM à superfície alvo.
Além disto, como o SOM possui número de nodos fixo, estes autores propõem passos
adicionais para refinamento da malha.
Barhak (2002) propõe um método de reconstrução de superfícies baseado no modelo
SOM-TVS denominado Redes de Representação de Topologia (TRN), apresentado no
Capítulo 3 , tendo em vista a habilidade do TRN para aprender topologias. Entretanto,
O TRN não produz malhas de triângulos, uma vez que sua estrutura é composta de
vértices e arestas mas não inclui a definição de faces. Assim, Barhak (2002) propôs
o modelo Gás Neural Estendido (Extended Neural Gas, ENG), que consiste em uma
extensão do TRN para gerar malhas de triângulos. Assim como o TRN, o ENG possui
número pré-fixado de nodos, e portanto a resolução das malhas geradas depende do
número de nodos escolhido. Após o treinamento do ENG são executados passos de pós-
processamento para: (a) eliminar faces que não representam a superfície do objeto, (b)
reorientar as faces, (c) complementar faces que faltam na representação da malha, (d)
detectar e triangular bordas.
A Malha Neural (Neural Mesh) proposta por Ivrissimtzis et al. (2003) é um método
de reconstrução de superfícies baseado no modelo SOM-TVS denominado Estruturas
de Células Crescentes (Growing Cell Structures, GCS). A estrutura da Malha Neural
é composta por simplexos de dimensão 2, ou seja, triângulos. Como o mapa cresce
incrementalmente, são geradas malhas de triângulos com diferentes resoluções durante
o treinamento. O método apresentado por Ivrissimtzis et al. (2003) mantém a topologia
das malhas produzidas igual à topologia da malha inicial. Ivrissimtzis et al. (2004)
adiciona um passo de aprendizado de Topologia à Malha Neural, permitindo a geração
de malhas que representem a topologia da superfície alvo.
4.1 Gás Neural Estendido
Barhak (2002) propõe uma abordagem para reconstrução de superfícies a partir de nu-
vens de pontos que se baseia nos algoritmos Neural Gas e Aprendizado Hebbiano Com-
petitivo. Estes algoritmos juntos produzem uma malha que aproxima a nuvem de pontos
e cujas arestas são um subconjunto da triangulação de Delaunay dos vértices da malha
52
4.1. GÁS NEURAL ESTENDIDO
(Martinetz e Schulten, 1994). Entretanto a malha resultante não forma uma malha de
triângulos bem definida, pois é composta somente de vértices e arestas, e não possui as
faces que definem uma representação por malha de triângulo. Assim, Barhak (2002) pro-
põe uma extensão do aprendizado Hebbiano que define faces que são um subconjunto da
triangulação de Delaunay. O algoritmo resultante é denominado Gás Neural Estendido
(Extended Neural Gas, ENG), e é descrito a seguir.
1. Inicialização do mapa.
• Número de nodos inicialmente contidos no mapa: É escolhido um número
|A| de nodos para o mapa, que não muda durante o treinamento.
• Os vetores de pesos dos nodos e seus vetores normais são inicializados alea-
toriamente.
• As conexões não precisam ser inicializadas, pois serão aprendidas durante o
treinamento.
• Os seguintes parâmetros devem ser inicializados: εi e ε f , ηi e η f , idadei,
idade f . Os parâmetros idadei e idade f denotam respectivamente os valores
iniciais e finais para o limite de idade máxima das arestas.
2. Competição entre os nodos. Em cada iteração (t) de aprendizado, uma amostra
ξ(t)∈ Ξ é selecionada. Os nodos da rede são ordenados de acordo com a distância
Euclidiana entre seus vetores de pesos e a amostra ξ(t). conforme mostrado na
Equação 3.16.
3. Adaptação dos vetores de pesos. Os vetores de pesos são adaptados proporcional-
mente à posição dos nodos na ordenação criada durante a competição entre nodos.
O novo vetor de pesos atribuído a cada nodo é determinado pela Equação 3.17.
Os valores da taxa de aprendizado atual (ε(t)) e da largura de vizinhança (η(t))
são determinados com base em seus valores iniciais (εi,ηi) e finais (ε f ,η f ) pela
Equação 3.18. Os vetores normais de cada vértice são atualizados pela mesma
regra que seus vetores de pesos.
4. Atualização de conexões. Se não existe a conexão cs0s1 , crie esta conexão. Se
os três primeiros nodos vencedores (s0, s1, s2) estiverem conectados, crie uma
face ( fs0s1s2) com estes nodos. Se a face foi criada, calcule e normalize seu vetor
normal:
53
CAPÍTULO 4. MODELOS SOM-TVS PARA RECONSTRUÇÃO DE SUPERFÍCIES
n = (ws1 −ws0)x(ws2 −ws0) calcula vetor normal
n = n/||n|| normaliza
dir = n · (ξ−ws0) verifica direção
Se (dir < 0) então n =−n inverte direção
Incremente a idade de todas as arestas e remova as arestas “velhas” e as faces
que possuem uma aresta “velha”. Uma aresta é dita “velha” quando sua idade está
acima de um limiar, calculado em cada iteração de maneira similar aos parâmetros
ε(t) e η(t) na Equação 3.18.
O conjunto de conexões e faces resultantes após o procedimento de Atualização
de Conexões são descritos nas Equações 3.19 e 4.2:
F(t +1) =
F(t)∪{ fs0,s1,s2}\FI se ∃ {cs0,s2,cs1,s2} e ∄{ fs0,s1,s2}F(t)\FI caso contrário
☛✡
✟✠4.2
Onde FI é conjunto de faces que possuem uma aresta inválida (“velha”).
5. Atualização de Nodos. O Gás Neural Estendido mantém o número de nodos fixo
durante o aprendizado.
6. Critério de Parada. O treinamento do Gás Neural Estendido é encerrado após um
número pré-estabelecido de iterações.
4.1.1 Criação de Variedades de Dimensão 2
O algoritmo de treinamento do Gás Neural Estendido cria uma malha de triângulos que
aproxima a superfície e é composta de um subconjunto de arestas e triângulos de De-
launay. Entretanto, esta representação não constitui uma variedade de dimensão 2. Para
isto, é realizado um processamento posterior para criação de malhas que sejam varieda-
des de dimensão 2. Este processamento é composto de três etapas, brevemente descritas
a seguir. Mais detalhes podem ser encontrados em (Barhak, 2002).
1. Eliminação de faces indesejáveis. Nesta etapa são eliminadas as faces que não
representam a superfície do objeto. As faces candidatas a eliminação são caracteri-
54
4.2. MALHA NEURAL
zadas por: (a) possuírem uma aresta comum com mais de uma face; (b) possuírem
uma anglo diedro pequeno com outra face.
As arestas são percorridas e, para cada aresta que possui mais que duas faces inci-
dentes, todas as faces são eliminadas, exceto as duas faces que possuem o maior
ângulo diedro entre si. Em seguida, o ângulo entre as duas faces que permanece-
ram são checados com respeito a um dado limiar. Se o ângulo for menor que este
limiar, a face que compartilha menos arestas com outras faces é eliminada. Caso
as duas faces empatem neste critério o teorema 3 de (Amenta e Choi, 1999) é
usado como critério de eliminação. Os vértices da malha também são percorridos,
e as faces incidentes em cada vértice são projetadas em um plano na direção da
normal do vértice. Se duas faces se sobrepõem no plano, a face mais antiga criada
pelo algoritmo Gás Neural Estendido é eliminada.
2. Reorientação de Faces. A malha resultante é reorientada na mesma direção
percorrendo-se todas as faces e orientando as faces que possuem uma aresta co-
mum na mesma direção.
3. Complemento de faces que faltam. Os vértices são percorridos e um “leque” de
triângulos (triangle fan) é construído ao redor de cada vértice. Depois de construir
o “leque”, as arestas que faltam para construir os triângulos são adicionadas à
malha. Entretanto, não é permitida a criação de faces que sobreponham outras
faces já existentes na malha.
4. Detecção e triangulação de bordas. Nesta etapa são triangulados polígonos que
representam buracos indesejáveis na malha, que são formados por arestas de borda.
Estes polígonos são triangulados usando um leque de triângulos (triangle fan).
Para isto. um vértice é inserido no meio do polígono e é conectado a todos os
vértices do polígono, conforme ilustra a Figura 4.1.
4.2 Malha Neural
O modelo denominado Malha Neural proposto por Ivrissimtzis et al. (2003) é um mo-
delo SOM-TVS baseado nas Estruturas de Células Crescentes de Fritzke (1994) (GCS)
para reconstrução de superfícies. A malhas produzidas durante treinamento da Malha
Neural crescem incrementalmente produzindo representações com diferentes resoluções.
O tempo de treinamento é praticamente independente do número de pontos de entrada,
55
CAPÍTULO 4. MODELOS SOM-TVS PARA RECONSTRUÇÃO DE SUPERFÍCIES
(a) borda (b) borda após triangulação
Figura 4.1 Triangulação de bordas indesejadas na malha. (Figura reproduzida de (Barhak,2002))
pois estes pontos não são processados diretamente, eles são amostrados, e o tempo de
amostragem tem pouca influência sobre o tempo total de treinamento do mapa. As ma-
lhas geradas pelo método proposto por Ivrissimtzis et al. (2003) mantém a topologia da
malha inicial. Em Ivrissimtzis et al. (2004) é adicionado um passo de aprendizado de
topologia ao Neural Mesh, permitindo a geração de malhas que representem adequada-
mente a topologia da superfície alvo.
1. Inicialização do mapa.
• Nodos e Conexões iniciais: O trinamento inicia com uma malha inicial sim-
ples, como um tetraedro.
• Inicialização dos vetores de pesos: Ivrissimtzis et al. (2003) não restringe a
maneira como os vetores de pesos dos nodos devem ser inicializados.
• Parâmetros de treinamento: εb, εn, β , λ , µ , cA, cL. Sendo µ o parâmetro
que define a frequência das operações de colapso de aresta realizadas pelo
procedimento de atualização de nodos, cA é um parâmetro utilizado para
determinar se um determinado triângulo deve ou não ser removido durante
o procedimento de atualização de conexões, e cL é o parâmetro usado para
determinar se duas bordas estão muito próximas para serem juntadas durante
o procedimento de atualização de conexões.
2. Competição entre Nodos: Em cada iteração t, um ponto ξ(t) é amostrado do es-
paço alvo, e o nodo s0 mais próximo a ξ(t) é selecionado vencedor, conforme
mostra a Equação 3.1. O contador de sinais do nodo s0 é incrementado em uma
unidade (Equação 3.2).
56
4.2. MALHA NEURAL
(a) antes da divisão (b) após a divisão
Figura 4.2 Operação de divisão de vértice. Figura reproduzida de Ivrissimtzis et al. (2003).
3. Adaptação dos Vetores de Pesos: O vetor de pesos do nodo s0 e de seus vizinhos
topológicos diretos são adaptados. A adaptação do vetor de pesos do vencedor é
feita de acordo com a Equação 3.4. Os vetores de pesos dos vizinhos são adaptados
por uma fração do componente tangencial de seus Laplacianos. Para isto, calcula-
se o Laplaciano L de cada vizinho sn do vencedor conforme a Equação 4.3. Em
seguida calcula-se o componente tangencial (Lt) de acordo a Equação 4.4. Por fim,
atualiza-se o vetor de pesos de cada nodo vizinho do vencedor por uma fração εb
do componente tangencial de seu Laplaciano, conforme mostra a Equação 4.5.
L(sn) =1
|Nsn | ∑si∈Nsn
(wsi −wsn)☛✡
✟✠4.3
onde Nsn é o conjunto formado pelos vizinhos topológicos diretos de sn.
Lt(sn) = L(sn)− (L(sn) ·n)n☛✡
✟✠4.4
onde n é a normal do vértice.
wsn(t +1) = wsn(t)+ εnLt
☛✡
✟✠4.5
4. Atualização de Nodos: A cada λ iterações de adaptação é realizada a adaptação de
nodos. Primeiro, encontra-se o nodo com o maior contador de sinais sq, e a aresta
e mais longa adjacente a sq. Então encontram-se as arestas e1 e e2 que dividem
a estrela (conjunto de arestas) de sq ao meio, e executa-se uma divisão de vértice
(vértice split) ao longo de e1 e e2, posicionando o novo vértice no meio da aresta
e, conforme ilustra a Figura 4.2.
A cada µ · |A| iterações de adaptação são removidos os nodos que não foram ati-
57
CAPÍTULO 4. MODELOS SOM-TVS PARA RECONSTRUÇÃO DE SUPERFÍCIES
(a) Antes do Colapso (b) Após o colapso
Figura 4.3 Operação de Colapso de Aresta. Figura (a) reproduzida de Ivrissimtzis et al. (2003).
vados nas últimas µ · |A| iterações. A remoção de nodos é feita pela operação de
colapso de aresta, ilustrada na Figura 4.3. A aresta escolhida é que possui o maior
erro de regularidade, definido pela Equação 4.6.
13
√
(a+b−10)2 +(c−7)2(d −7)2
☛✡
✟✠4.6
onde a, b denotam o número de vizinhos dos vértices sa e sb que formam a aresta, e
c e d denotam o número de vizinhos dos vértices sc e sd , opostos à aresta, conforme
ilustrado na Figura 4.3.
O conjunto de nodos e o conjunto de conexões resultantes após a atualização de
nodos são descritos pelas Equações 4.7 e 4.8:
A(t +1) = A(t)∪{sr}\AI☛✡
✟✠4.7
onde sr é o novo vértice inserido pela operação de divisão de vértice e AI é con-
junto de nodos não ativados (inativos) que são removidos pela operação de colapso
de aresta.
C(t +1) =C(t)∪Cdv ∪Cca\CRdv\CRca
☛✡
✟✠4.8
Onde Cdv e Cca denotam o conjunto de arestas criadas pelos procedimentos de
divisão de vértice e colapso de aresta respectivamente, e CRdv e CRca denotam o
conjunto de arestas removidas por estas mesmas operações.
5. Atualização de Conexões: As operações de divisão de vértice e colapso de aresta
realizadas durante o passo de atualização de nodos não alteram a topologia da ma-
lha. Isto é feito durante o passo de Atualização de Conexões, que foi adicionado
58
4.3. ABORDAGEM DE APRENDIZADO ADAPTATIVA PARA RECONSTRUÇÃO DESUPERFÍCIES.
ao algoritmo da Malha Neural por Ivrissimtzis et al. (2004), onde é chamado de
Aprendizado de Topologia, e consiste em remover triângulos permitindo a forma-
ção de bordas, e juntar de bordas permitindo a formação de ansas (handles). Estes
últimos são necessários para reproduzir, poe exemplo, a topologia de um torus,
que possui um buraco, mas não possui arestas de bordas, ou seja, aquelas com
uma única face incidente.
6. Critério de Parada: Ivrissimtzis et al. (2003) indica o número de vértices do mapa
como um possível critério de parada do treinamento.
4.3 Abordagem de Aprendizado Adaptativa para Re-
construção de Superfícies.
Brito et al. (2008) propõem uma solução para o problema de reconstrução de superfícies
que utiliza a versão em lotes (batch) do algoritmo de aprendizado do SOM para mover
as coordenadas dos vértices da malha na direção dos pontos amostrados na superfície
alvo. Como o SOM mantém a estrutura do mapa inicial, é possível que, após o trei-
namento do mapa, alguns vértices ou triângulos estejam localizados em regiões onde a
densidade de probabilidade é nula p(ξ) = 0, mas que estão entre regiões da superfície
densamente populadas. Este problema é contornado numa fase posterior ao treinamento
do mapa, denominada adaptação da malha, e que consiste em realizar operações de remo-
ção de vértices (vertex removal) e permuta de arestas (edge swaps), conforme descrito
por Brito et al. (2008). A reconstrução se encerra após a adaptação da malha. Entretanto,
para geração de malhas com múltiplas resoluções é preciso refinar a malha adicionando
mais elementos (vértices e faces). Isto é alcançado em uma outra fase, denominada
refinamento da malha, que consiste de operações de subdivisão de triângulos (triangle
subdivision) e divisão de vértices (vertex splits), ambas descritas por Brito et al. (2008).
A malha refinada é submetida a um novo processo de treinamento, utilizando o SOM.
A seguir, é descrita a fase treinamento que utiliza o Mapa Auto-organizável de Koho-
nen. Note que a abordagem proposta em Brito et al. (2008), embora seja importante no
contexto de abordagens baseadas em SOM para reconstrução de superfícies, não é um
SOM-TVS, tendo em vista que o algoritmo de treinamento não apresenta procedimentos
de atualização de nodos nem conexões. Todas as operações que modificam as conexões
e inserem novos vértices no mapa são executadas após o treinamento do mapa.
1. Inicialização do mapa.
59
CAPÍTULO 4. MODELOS SOM-TVS PARA RECONSTRUÇÃO DE SUPERFÍCIES
• Nodos e Conexões iniciais: O trinamento inicia com uma malha inicial sim-
ples, como um octaedro.
• Vetores de pesos iniciais: Os vetores de pesos iniciais usados para treina-
mento são definidos em uma fase de pré-treinamento da rede neural. Um
conjunto de pesos são aleatoriamente escolhidos do conjunto de vetores de
entrada, e o SOM é treinado usando uma malha inicial formada por estes ve-
tores de pesos. Os pesos obtidos durante esta fase, são tidos como centroides
para execução do algoritmo k-means. Finalmente, os centros obtidos com o
k-means são utilizados como vetores de pesos iniciais. A partir do segundo
nível de resolução, a malha utilizada para treinamento do SOM é obtida após
a fase de refinamento da malha no nível anterior.
• Inicialização de Parâmetros: O tamanho inicial do parâmetro de vizinhança
σ0 é igual ao diâmetro da malha dividido por dois, conforme descrito pela
Equação 4.9. Do terceiro nível de resolução em diante o valor de σ0 é cal-
culado considerando as distâncias Euclidianas mínimas do baricentro dos tri-
ângulos ao conjunto de treinamento (MD(T )), calculado pela Equação 4.10.
O valor de σ0 é calculado considerando valor médio de MD(T ) obtido após
a primeira fase de treinamento (MD(T )0) e os valores médios dos MD(T )
subsequentes, conforme a Equação 4.11.
σ0 =diam(M)
2
☛✡
✟✠4.9
MD(T ) = argmim{d(ξ,BT )} ∀ ξ ∈ Ξ☛✡
✟✠4.10
σ0(n) =diam(M)
2
MD(T )(n−1)
MD(T )0
☛✡
✟✠4.11
2. Competição entre nodos: Em cada iteração t, uma amostra ξ(t) é apresentada ao
mapa, e o nodo (s0) do mapa mais próximo de ξ(t) é selecionado vencedor. Ou
seja, o nodo que satisfaz a condição estabelecida na Equação 3.1.
3. Adaptação dos vetores de pesos: Brito et al. (2008) utiliza a versão de treinamento
em lotes do SOM, em que os vetores de pesos são adaptados uma única vez a cada
época (apresentação de todas as amostras), segundo a Equação 4.12. A intensidade
da adaptação dos vetores de pesos diminui com a distância ao vencedor. Assim,
60
4.4. GROWING SELF-ORGANIZING SURFACE MAP
Brito et al. (2008) não adapta os vetores de pesos dos nodos com hs j,s0 < 10−15,
diminuindo significativamente o tempo de treinamento sem efeitos significativos
nos resultados finais.
ws j(t +1) =∑d
k=0 hs j,s0(ξ(k))ξ(k)
∑dk=0 hs j,s0(ξ)
☛✡
✟✠4.12
Onde t denota a época atual, d é a dimensão do espaço de entrada, s0 é o nodo
vencedor para a amostra ξ, e hs j,s0 é a função de vizinhança definida pela Equação
4.13.
hs j,s0 = exp
(
−||rs j − rs0 ||2
2σ(t)2
)
☛✡
✟✠4.13
onde rs j é a localização do nodo s j na grade do mapa, ||rs j − rsi|| é a distância
entre si e s j no mapa, e σ(t) é o parâmetro de vizinhança na iteração t, definido
pela Equação:
σ(t) = σ0 exp
(
− tτ1
) ☛✡
✟✠4.14
em que σ0 é o valor inicial do parâmetro de vizinhança, τ1 = tmax/log(σ0) é uma
constante de tempo, e t = 0,1, ..., tmax denota a época atual dentre as tmax épocas
de treinamento. Uma época de treinamento consiste na apresentação de todos os
pontos de entrada.
4. Critério de Parada. São executadas tmax épocas de treinamento e outras tmax épocas
de treinamento em uma fase adicional de convergência da rede. Nesta última,
apenas o vizinhos mais próximos do vencedor sofrem adaptação de seus vetores
de pesos.
4.4 Growing Self-organizing Surface Map
O modelo denominado Growing Self-organizing Surface Map (GSOSM) foi proposto
por Mole e Araújo (2010) para reconstrução de superfícies de objetos a partir de nu-
vens de pontos densas, produzindo malhas com crescimento incremental, formadas por
triângulos aproximadamente equiláteros. O GSOSM introduz uma nova regra de apren-
dizado de competições, denominada Aprendizado Hebbiano Competitivo de Conexões
61
CAPÍTULO 4. MODELOS SOM-TVS PARA RECONSTRUÇÃO DE SUPERFÍCIES
(Competitive Connection Hebbian Learning, CCHL) para produzir triangulações com-
pletas.
1. Inicialização do mapa.
• O conjunto A é inicialmente vazio (A =∅).
• Como não existem nodos inicialmente, não há vetor de peso para inicializar.
• Também não existem conexões: C =∅.
• Os parâmetros de treinamento seguintes precisam ser inicializados: εb, emax,
θmin, Bmin.
O parâmetro εb é a taxa de aprendizado aplicada ao nodo vencedor, conforme
descrito na Tabela 3.1. O parâmetro emax define o erro máximo local, que está di-
retamente relacionado ao comprimento das conexões entre os nodos. O parâmetro
θmin define o maior valor permitido para o ângulo entre duas arestas na criação de
um triângulo. Determina também a troca ou remoção de diagonais em um losango.
O parâmetro Bmin especifica a taxa mínima de correlação de ativação necessária
para inserir uma nova conexão entre um par de nodos.
2. Competição entre os nodos. O GSOSM não impõe restrição ao processo de a-
presentação de amostras. Assim, em cada iteração t, um vetor de entrada (ξ(t))
é apresentado ao mapa em qualquer ordem. Para cada amostra apresentada, o
GSOSM seleciona três nodos mais próximos (s0, s1, s2), onde s0 e s1 são definidos
nas Equações 3.1 e 3.21 respectivamente, e s2 é definido na equação seguinte:
s2 = argmin{d(ξ,wsi}, ∀si ∈ A\{s0,s1}☛✡
✟✠4.15
3. Adaptação dos vetores de peso.
Os vetores de entrada podem ser apresentados ao mapa em sequência, de modo
que o vetor de entrada ξ(t) apresentado na iteração t é similar ao vetor ξ(t − 1)
apresentado na iteração anterior. Por este motivo, mover o novo vencedor em di-
reção à amostra atual com uma taxa εb pode fazer com que um único nodo seja
o vencedor para um conjunto de vetores de entrada. Para evitar este problema, o
GSOSM realiza a adaptação dos vetores de pesos de duas maneiras.
62
4.4. GROWING SELF-ORGANIZING SURFACE MAP
Os três nodos vencedores selecionados pelo procedimento de competição entre os
nodos foram um triângulo imaginário T e determinam um plano P contendo T.
Considere então o prisma P definido pelos três planos ortogonais que interceptam
P nas arestas de T. Se ξ estiver fora de P, ou os nodos s0, s1 e s2 não estiverem
conectados entre si, então o vetor de pesos do nodo vencedor é movido em direção
à amostra ξ com uma taxa εb, conforme mostra a Equação 3.4. Caso contrário, o
GSOSM aplica o segundo operador de adaptação de vetores de pesos (Equação
4.16):
ws0 = ws0 + εbPnd(P,ξ)☛✡
✟✠4.16
onde Pn é o vetor normal ao plano P e d(P,ξ) é a distância de ξ ao plano P.
4. Atualização de conexões. O aprendizado de conexões do GSOSM está baseado
em uma extensão do CHL, denominada CCHL e proposta por Mole e Araújo
(2010). O CCHL foi desenvolvido com o propósito de produzir uma triangulação
completa, uma vez que existem casos em que o CHL não alcança este objetivo,
como descrito por Mole e Araújo (2010). A regra de aprendizado do CCHL pode
ser descrita como: Dado um vetor de entrada ξ(t) e os três nodos mais próximos
a ξ(t): {s0,s1,s2}, o CCHL seleciona o par de nodos que forma a aresta mais
próxima a ξ(t) para ser conectado. A conexão csis j selecionada é aquela que
satisfaz a condição seguinte:
winc −wsi
winc −wsi
·w <ξ−wsi
||ξ−wsi ||·w, e
winc −ws j
winc −ws j
· (−w) <ξ−ws j
||ξ−ws j ||· (−w)
☛✡
✟✠4.17
onde: w =ws j−wsi
||ws j−wsi ||, e winc é definido na Equação seguinte:
winc =ds1s2 ·ws0 +ds0s2 ·ws1 +ds0s1 ·ws1
ds0s1 +ds0s2 +ds1s2
☛✡
✟✠4.18
onde: dsis j = ||wsi −ws j || ∀si,s j ∈ A
Inserção de Conexões: Depois que uma conexão csis j for selecionada pelo CCHL,
63
CAPÍTULO 4. MODELOS SOM-TVS PARA RECONSTRUÇÃO DE SUPERFÍCIES
o GSOSM verifica as três condições seguintes antes de criar a nova conexão:
• O coeficiente de correlação Bsis j entre os nodos si e s j satisfaz a condição
descrita na Equação 4.19.
Bmin ≤ Bsis j ≤ 0.5 Bmin ∈ [0,0.5]☛✡
✟✠4.19
• O coeficiente de similaridade entre os nodos si e s j (θsis j) com respeito ao
nodo sk (sk ∈ {s0,s1,s2} e sk 6= si e sk 6= s j) for maior ou igual a θmin:
θsis j ≥ θmin
☛✡
✟✠4.20
• csis j não cruza a região de Voronoi de outra conexão.
A primeira condição verifica a continuidade do espaço de entrada entre os nodos
si e s j. A segunda condição garante que os triângulos criados sejam aproximada-
mente equiláteros. A terceira condição identifica conexões cruzadas que poderiam
gerar triângulos sobrepostos.
O coeficiente de correlação entre os nodos si e s j é calculado pela seguinte equa-
ção:
Bsis j =(ξ−wsi) · (ws j −wsi)
||ws j −wsi ||2, ||ξ−wsi|| ≤ ||ξ−ws j ||
☛✡
✟✠4.21
O coeficiente θsis j mede a similaridade entre os nodos si e s j. Geometricamente,
θ representa o cosseno do ângulo entre os vetores v = wsi −wsk e u = ws j −wsk .
Logo θsis j ∈ [−1,1]. O valor de θsis j é calculado pela equação seguinte:
θsis j =wsi −wsk
||wsi −wsk ||·
ws j −wsk
||ws j −wsk ||☛✡
✟✠4.22
Para verificar se a conexão csis j cruza a região de Voronoi de outra conexão, o
GSOSM considera o ponto médio entre si e s j: wsm = 0.5(wsi + ws j) e então,
verifica se o ponto wsm está dentro da região de Voronoi de outra conexão cskst
∀st ∈ Nsk . Sendo sk ∈ {s0,s1,s2} e sk 6= si e sk 6= s j; e st 6= si e st 6= s j. A Equação
4.23 descreve esta condição:
64
4.4. GROWING SELF-ORGANIZING SURFACE MAP
vkt ·vkm ≥ vki ·vkm e vkt ·vkm ≥ vk j ·vkm
☛✡
✟✠4.23
onde:
vkn =wsn−wsk
||wsn−wsk ||∀n ∈ {i, j, t,m}.
Se a conexão csis j cruza a região de Voronoi de outra conexão cskst , então uma das
seguintes ações são tomadas: (a) cancelar o processo de inserção da conexão csis j ;
(b) remover a conexão cskst e inserir csis j . A escolha é feita de modo a preservar
a conexão com o maior coeficiente de excitação φsis j calculado de acordo com a
Equação:
φsis j =
(
1+ |β −0.5|+d(csis j,ξ)
||csis j ||
)−1 ☛✡
✟✠4.24
onde d(csis j,ξ) = ||[wsi +β [ws j −wsi]]−ξ||, e ||csis j ||= ||wsi −ws j ||.
Remoção de Conexões: A operação de remoção de conexões descrita a seguir só
é realizada nas iterações em que não é inserida uma nova conexão. O GSOSM
remove conexões em duas etapas: a primeira para remover conexões longas, e a
segunda para remover conexões cruzadas, eliminando triângulos sobrepostos.
Sendo os nodos si e s j nas extremidades da conexão vencedora, com wsi mais pró-
ximo a ξ que ws j , o GSOSM considera as conexões csist∀st ∈ Nsi , satisfazendo a
condição estabelecida na Equação 4.25, como sendo candidatas à remoção. E são
removidas aquelas que satisfazem a condição estabelecida na Equação 4.26.
wst −wsi ·ξ−wsi > 0☛✡
✟✠4.25
wsi −ws j
||wsi −ws j ||·
wst −ws j
||wst −ws j ||< θmin
☛✡
✟✠4.26
A remoção das conexões longas, resultam em losangos sem diagonal. Para man-
ter a triangulação completa, o GSOSM conecta os outros dois vértices do losango.
Logo, tem-se uma troca de diagonais. Este processo é cancelado se a troca resultar
65
CAPÍTULO 4. MODELOS SOM-TVS PARA RECONSTRUÇÃO DE SUPERFÍCIES
em uma conexão com valor do coeficiente φ menor que φsist .
Na segunda etapa de remoção de conexões, o GSOSM verifica se o ponto médio
de csis j está dentro da região de Voronoi de outra conexão, conforme discutido an-
teriormente (ver Equação 4.23). Se este for o caso, o GSOSM remove a conexão
com menor valor do coeficiente de excitação (φ ), calculado pela Equação 4.24.
O conjunto de conexões e o conjunto de nodos resultantes após o procedimento de
atualização de conexões, são respectivamente descritos pelas Equações 4.27 e .
C(t +1) =
C(t)∪{csis j}\{cskst} caso 1
C(t)∪{csis j} caso 2
C(t)\Csist caso 3
☛✡
✟✠4.27
A(t +1) =
A(t)\NR(t) caso 1 e caso 3
A(t) caso 2
☛✡
✟✠4.28
Onde: csis j é a conexão mais próxima a ξ(t) dentre as possíveis conexões entre os
nodos {s0,s1,s2}, selecionados pelo procedimento de competição entre os nodos;
sk ∈ {s0,s1,s2} e sk 6= si e sk 6= s j, e st ∈ Nsk e st 6= si e st 6= s j; Csist é o conjunto de
conexões do nodo si que são consideradas longas (condição 4.26), ou que cruzam
outra conexão e possuem φcsis jmenor que o valor φ da conexão cruzada. NR(t) é
o conjunto de nodos isolados após a remoção conexões. Os conjuntos Csist e NR(t)
podem estar vazios.
Caso 1:
• csis j satisfaz as condições descritas nas Equações 4.19, 4.20.
• csis j cruza a conexão cskst (condição 4.23 verdadeira) e φskst<φsis j.
Caso 2:
• csis j satisfaz as condições descritas nas Equações 4.19, 4.20, e
• csis j não cruza a região de Voronoi de outra conexão
Caso 3:
66
4.4. GROWING SELF-ORGANIZING SURFACE MAP
• csis j não satisfaz uma das condições descritas nas Equações 4.19, 4.20, ou
• csis j cruza a região de Voronoi de outra conexão skst , e φskst > φsis j
5. Atualização de nodos.
A atualização de nodos do GSOSM acontece pela inserção de novos nodos e pela
junção de nodos existentes.
Inserção de nodos: Após a seleção de vencedores pelo procedimento de compe-
tição entre nodos, o GSOSM insere, se necessário, um novo nodo ao mapa. Nas
iterações em que um novo nodo é inserido, não são executados os procedimentos
de adaptação de vetores de pesos e de atualização de conexões.
Cada nodo si possui um campo receptivo esférico com raio emax. O GSOSM insere
um novo nodo no mapa sempre que a amostra apresentada à rede (ξ(t)) não estiver
dentro do campo receptivo de nenhum nodo no mapa. O vetor de pesos do novo
nodo é inicializado com o vetor ξ(t) (Equação 4.29). Para inserir um novo nodo, o
GSOSM considera uma esfera vazia com raio igual a dinsert (calculado de acordo
com a Equação 4.30) ao redor de cada nodo existente. Para que um novo nodo sr
seja inserido, a condição descrita na Equação 4.32 deve ser satisfeita.
wsr = ξ(t)☛✡
✟✠4.29
dinsert = emax +dmax − emax
2
☛✡
✟✠4.30
O valor dmax representa o comprimento esperado das arestas de um triângulo, e é
calculado como na Equação a seguir:
dmax = emax
√3
☛✡
✟✠4.31
d(s0,sr)≥ dinsert
☛✡
✟✠4.32
Fusão de nodos: Após a execução do procedimento de atualização de nodos, o
GSOSM verifica se é necessário realizar a fusão dos nodos s0 e s1. Nas iterações
67
CAPÍTULO 4. MODELOS SOM-TVS PARA RECONSTRUÇÃO DE SUPERFÍCIES
em que é realizada fusão de nodos, o procedimento de atualização de conexões
não é executado.
O procedimento de inserção de nodos do GSOSM garante que a distância entre
dois nodos quaisquer seja igual ou superior que dinsert . Entretanto, todos os nodos
podem ser reposicionados pelo procedimento de adaptação de vetores de pesos.
Como consequência, um novo pode invadir o campo de receptivo de outro nodo,
produzindo um triângulo com pelo menos uma de suas arestas substancialmente
menor que o comprimento esperado para as atestas (dmax). Esta configuração é
eliminada pela fusão de nodos.
Se os dois nodos (s0 e s1) mais próximos à amostra ξ(t) estiverem a uma distância
menor que emax, estes nodos devem ser substituídos por um único nodo (sm). O
vetor de pesos deste nodo (wsm) é inicializado com a média entre ws0 e ws1:
wsm = 0.5(ws0 +ws1)☛✡
✟✠4.33
O novo nodo é conectado a todos os nodos sn ∈ Ns0 ∪Ns1 \ {s0,s1}. O GSOSM
pode realizar a fusão entre dois nodos independentemente de eles estarem ou não
conectados entre si.
O novo conjunto de nodos e de conexões após o procedimento de atualização de
nodos, são descritos, respectivamente, pelas Equações 4.34 e 4.35.
A(t +1) =
A(t)∪{sr} caso 1
A(t)\{s0,s1}∪{sm} caso 2
☛✡
✟✠4.34
C(t +1) =
C(t) caso 1
C(t)\{cs0,s1}∪Csmsn caso 2
☛✡
✟✠4.35
Onde: Csmsn é o conjunto de conexões entre os nodos sm e sn ∀sn ∈ Ns0 ∪Ns1 \{s0,s1}.
Caso 1: d(s0,sr)≥ dinsert
68
4.4. GROWING SELF-ORGANIZING SURFACE MAP
Caso 2: d(s0,sr)< dinsert e d(s0,s1)< emax
6. Critério de Parada. O treinamento do GSOSM se encerra após uma certa quanti-
dade de épocas (Nmax), definida pelo usuário, e que usualmente é maior ou igual a
3. Cada época corresponde à apresentação de todos vetores de entrada ξ ∈ Ξ.
69
5Solução Proposta
Neste capítulo são apresentadas as soluções propostas para reconstrução de superfícies
de objetos 3D a partir de nuvens de pontos não estruturados. Estas soluções foram
propostas a partir da investigação das possibilidades de utilização de modelos SOM-
TVS como solução para o problema de reconstrução de superfícies. Foram considerados
modelos SOM-TVS com características interessantes para o problema tratado (Capítulo
3), bem como modelos SOM-TVS desenvolvidos especificamente para tratar problemas
relacionados à reconstrução de superfícies (Capítulo 4).
A estrutura do mapa gerado pelo GCS consiste de simplexos com dimensionalidade
k fixa, sendo capaz de gerar malhas de triângulos quando k = 2. Além disto o GCS cresce
de maneira incremental, permitindo a geração de malhas com diferentes resoluções. En-
tretanto o GCS não é capaz de aprender a topologia dos dados de entrada, e portanto só
é capaz de produzir modelos topologicamente equivalentes ao modelo inicial.
O TRN, por sua vez, possui habilidade de aprender topologia, mas, não apresenta
crescimento incremental. O GNG aprende topologias e cresce incrementalmente. O
ITM, apresenta características semelhantes ao GNG, porém é capaz de remover arestas
inconsistentes de maneira imediata. Estes três modelos (TRN, GNG, ITM) utilizam o
aprendizado Hebbiano Competitivo (CHL), proposto por Martinetz e Schulten (1994)
para aprender as conexões do mapa. Como afirma De Silva (2008), Martinetz e Schul-
ten (1994) tratou o caso particular do teorema das testemunhas fracas (Teorema 1 no
Capítulo 2) em os simplexos σ são arestas (1-simplexos). Sendo assim, estes três mo-
delos (TRN, GNG, ITM) não geram 2-simplexos necessários para a construção de uma
malha de triângulos.
Nesta tese foi proposto inicialmente um modelo SOM-TVS chamado Growing Self-
reconstruction Maps (GSRM) (Rego et al., 2009, 2010) que estende o CHL para a gera-
ção de 2-simplexos. Assim como o GNG, o GSRM executa simultaneamente as etapas
71
CAPÍTULO 5. SOLUÇÃO PROPOSTA
de ordenamento e aprendizado de topologia, ou seja, à medida em que o algoritmo de
treinamento distribui os vértices, ele também estabelece as conexões entre eles. Entre-
tanto, durante o aprendizado as amostras são escolhidas aleatoriamente e apresentadas
ao mapa, de modo que, se uma amostra específica que seria responsável pelo estabe-
lecimento de uma determinada conexão não for apresentada no momento adequado do
treinamento, esta conexão não pode ser criada. Isto pode acontecer, por exemplo, se a
amostra for apresentada antes que ambos vértices da conexão tenham sido adicionados
ao mapa. Esta característica é extremamente desfavorável no caso de reconstrução de
superfícies, visto que a ausência de uma aresta tem como resultado visível a presença de
buracos indesejados na malha que representa a superfície avo.
Sendo assim, foi proposta uma segunda solução que, semelhantemente ao TRN, di-
vide o treinamento em duas etapas: ordenamento e reconstrução. O objetivo da etapa
de ordenamento é distribuir os vértices o mais uniformemente possível. Enquanto que
a etapa de aprendizado de Topologia gera as faces e produz uma malha de triângulos
2-variedade. Durante a fase aprendizado de topologia, o critério local da triangulação de
Delaunay intrínseca de superfícies planas por partes foi usado para remover algumas fa-
ces, evitando arestas com mais de 2 faces incidentes para produzir malhas 2-variedades.
Por isto, esta solução é denominada GSRM-iDT (do Rego e Araújo, 2010). Esta solução
foi posteriormente melhorada, diminuindo significativamente o tempo de reconstrução, e
então foi aplicada na reconstrução de estruturas anatômicas humanas (Rego et al., 2011).
Ambos, GSRM e GSRM-iDT, estão fortemente relacionados com o teorema das tes-
temunhas fracas, restringindo os simplexos gerados para simplexos de dimensão 2, com
o objetivo de produzir malhas de triângulos. Além disto, são acrescentadas heurísticas
para garantir que as malhas geradas sejam variedades de dimensão 2, evitar cruzamento
de arestas e favorecer a criação de triângulos que sejam o mais aproximadamente equi-
láteros possível, evitando triângulos com arestas muito mais longas que outras.
Uma desvantagem comum ao GSRM e GSRM-iDT é que podem produzir buracos
indesejados na malha quando as amostras disponíveis não forem suficientes para gerar
todas as faces necessárias. O preenchimento destes buracos é feito em uma etapa de pós-
processamento. Para evitar o aparecimento de buracos indesejados foi proposta uma
terceira solução, baseada no complexo Delaunay relaxado, e que por isto é chamada de
GSRM-rD (GSRM relaxed Delaunay). O GSRM-rD também divide o treinamento em
duas etapas: ordenamento e reconstrução. O ordenamento é realizado com o mesmo
algoritmo usado nesta etapa pelo GSRM-iDT. O algoritmo de reconstrução é baseado
no complexo Delaunay relaxado. Este algoritmo gera um complexo simplicial com di-
72
mensão arbitrária. Em seguida os vértices são perturbados seguindo uma heurística que
visa a remoção dos simplexos com dimensionalidade maior que 2. Se esta estratégia não
for suficiente para geração de uma malha 2-variedade, é executado um mecanismo de
extração de variedade.
O GSRM-rD apresenta a vantagem teórica de que todos os simplexos gerados perten-
cem ao complexo Delρ(L,W ). O que é interessante tendo em vista as garantias teóricas
de que Witρ(L,W ) é equivalente a Del(L,M), e portanto é uma boa aproximação da
variedade alvo, M. Note que um centro Delaunay relaxado é também uma testemunha
relaxada (Capítulo 2). Entretanto esta garantia só é válida sob determinadas condições de
amostragem que não foram reproduzidas na prática. Por outro lado, o GSRM e o GSRM-
iDT não se beneficiam do teorema das testemunhas fracas, visto que utilizam uma versão
“preguiçosa” do complexo de testemunhas (De Silva e Carlsson, 2004), em que todas as
arestas possuem uma testemunha fraca, mas não necessariamente os triângulos. Note
que este complexo possui o mesmo conjunto de vértices e arestas que o complexo de
testemunhas. Além disto, as arestas e faces geradas durante o pós-processamento para
preenchimento de buracos não possuem testemunhas em W . Os resultados experimentais
mostram que soluções baseadas em complexo de testemunhas e em complexo Delaunay
relaxado produzem malhas muito semelhantes tanto no que diz respeito à distância para a
malha original, quanto a outras métricas utilizadas para analisar a qualidade das malhas.
Ambas as soluções permitem a geração de malhas com diferentes resoluções, já
que utilizam um modelo SOM-TVS incremental para escolha dos vértices. A entrada
é sempre um conjunto de pontos não estruturados amostrados da superfície alvo, e a
saída é uma malha de triângulos para representar esta superfície. Os vértices da malha
podem ser um subconjunto dos pontos de entrada ou uma coleção de vértices que seguem
a distribuição dos pontos de entrada mas não necessariamente são um subconjunto deste.
O primeiro caso deve ser utilizado se a nuvem de pontos não possui ruído. O segundo
caso deve ser usado em caso de amostras ruidosas. Ambas as soluções apresentadas
são capazes de tratar problemas comuns enfrentados por métodos de reconstrução de
superfícies:
• Produzir uma malha de triângulos 2-variedade para aproximar a superfície alvo.
Com o GSRM-rD isto só possível após a extração de variedades;
• Produzir malhas de triângulos com diferentes resoluções;
• Aprender a geometria da malha (coordenadas dos vértices);
• Aprender a topologia da superfície alvo, sem informações estruturais prévias.
73
CAPÍTULO 5. SOLUÇÃO PROPOSTA
5.1 Growing Self-reconstruction Maps (GSRM)
A estrutura dos mapas produzidos durante o treinamento do GSRM (Rego et al., 2009,
2010) consiste de três componentes: vértices, arestas e faces triangulares. Assim, eles
possuem essencialmente a mesma estrutura que a representação de superfícies por ma-
lhas de triângulos. Note que ambos são compostos por simplexos com dimensionalidade
máxima 2. Os padrões de entrada (ξ) são as coordenadas 3D de pontos amostrados da
superfície alvo: ξ= [ξx ξy ξz]T . A camada de entrada possui um nodo para cada coor-
denada.
O mapa é representado pelo conjunto de nodos de saída. Cada nodo de saída é
conectado a todos os nodos de entrada. Os vetores de pesos dos nodos de saída de-
terminam a posição de cada um destes nodos no espaço 3D e são representados como:
wsi = [wx wy wz]T . Os nodos de saída podem estar conectados entre si. Estas conexões
determinam as arestas entre os vértices em uma malha de triângulos. Por fim, as arestas
formam triângulos, que são as faces da representação por malhas de triângulos.
O GNG tem como aspectos favoráveis a capacidade de aprender a geometria e topo-
logia de uma variedade alvo M a partir de pontos amostrados em M, além de crescer in-
crementalmente gerando grafos com diferentes resoluções. O aspecto desfavorável para
o emprego do GNG no problema de reconstrução de superfícies é que ele não produz ma-
lha de triângulos, pois sua estrutura é formada apenas por vértices e arestas. Sendo assim,
o GNG foi usado como ponto de partida para o desenvolvimento do GSRM. O GSRM
inclui algoritmos novos para realização dos procedimentos de atualização de topologia
e atualização de nodos. As principais novidades propostas são: extensão do Aprendi-
zado Hebbiano Competitivo, e a operação de remoção de arestas durante a atualização
de topologia; e a operação de inserção de vértices durante a atualização de nodos.
5.1.1 Parâmetros de Treinamento e Inicialização do Mapa
Os parâmetros de treinamento do GSRM são: λ , εb, εn, α , β , idademax, Nmax. Todos
eles estão definidos na Tabela 3.1. Os parâmetros εb e εn determinam respectivamente as
taxas pelas quais os vetores de pesos do nodo vencedor e de seus vizinhos são movidos
em direção a amostra ξ. A adaptação do vetor de pesos do vencedor deve ser maior que
a de seus vizinhos, εb > εn. Os valores de ambas as taxas são constantes e pequenos
porque os nodos não precisam ser movidos por longas distâncias através do passo de
adaptação, já que o GSRM é capaz de inserir vértices para representar regiões do espaço
de entrada que não estão representadas de maneira satisfatória.
74
5.1. GROWING SELF-RECONSTRUCTION MAPS (GSRM)
A frequência de inserção de um novo nodo é definida pelo parâmetro λ . Valores
muito altos podem retardar o processo de treinamento, enquanto que valores muito bai-
xos podem levar à inserção de novos nodos antes que os nodos já existentes no mapa
tenham sido adequadamente adaptados, resultando em um mapa com um grande nú-
mero de vértices mal posicionados e, consequentemente, uma representação inadequada
do espaço de entrada.
A redução dos valores dos contadores de erro realizada no passo 7 do Algoritmo 5
visa evitar que os valores dos erros cresçam excessivamente, e ressaltar os valores acu-
mulados mais recentemente. Enquanto que a redução dos contadores de erro dos nodos
sq e s f que é realizada no passo 4 do Algoritmo 4 ocorre em função da re-distribuição
de parte do erro destes nodos para o novo nodo sr. Por este motivo a taxa α usada da
Equação 3.23 é sempre maior que a taxa β da Equação 5.8.
A estrutura inicial do mapa é descrita a seguir:
• O mapa é inicializado com dois nodos: A = {si,s j}
• Os vetores de pesos destes nodos são escolhidos aleatoriamente dentre os vetores
de entrada: wsi = ξi e ws j = ξ j, sendo {ξi,ξ j} ∈ Ξ.
• Inicialmente não existem conexões no mapa: C =∅.
5.1.2 Competição Entre os Nodos
Em cada iteração t, um sinal de entrada ξ(t) é gerado de acordo com a distribuição p(ξ).
O GSRM seleciona dois vencedores, s0 e s1, respectivamente os nodos com vetor de
pesos mais próximo e segundo mais próximo a ξ(t) segundo a distância Euclidiana (ver
Equações 3.1 e 3.21). O nodo vencedor s0 mapeia o vetor de entrada ξ(t), assim sendo,
o contador de erro de s0 deve ser incrementado, adicionando o erro de s0 ao mapear ξ(t).
Isto é feito segundo a Equação 3.3.
5.1.3 Adaptação dos Vetores de Pesos
O nodo vencedor (s0) e seus vizinhos topológicos (sn) têm seus vetores de pesos movidos
em direção a ξ(t) com taxas respectivamente iguais a εb e εn. Os valores dos vetores de
pesos após a atualização são calculados conforme as Equações 3.4 e 3.5.
75
CAPÍTULO 5. SOLUÇÃO PROPOSTA
5.1.4 Atualização de Topologia
Aprendizado Hebbiano Competitivo Estendido
O algoritmo desenvolvido para criar e remover arestas e faces, consiste em uma extensão
da versão original do CHL, para geração de malhas que são variedades de dimensão 2.
O CHL original conecta o primeiro e o segundo nodos mais próximos de uma amostra
apresentada ao mapa, ou seja os nodos s0 e s1 que estão mais próximos a ξ(t) segundo
a distância Euclideana. Barhak (2002) propôs uma extensão do CHL para obter uma
representação por malhas de triângulos. Porém as malhas geradas não são variedades
de dimensão 2, condição necessária para a representação de superfícies. Neste trabalho,
foi desenvolvida uma nova extensão do CHL, denominada ECHL (Extended Hebbian
Learning), capaz de criar malhas que são variedades de dimensão 2, além de evitar
cruzamento de arestas. O Algoritmo 3 descreve o ECHL. Neste algoritmo, os nodos s0
e s1 são os nodos vencedores, determinados pelo procedimento de competição entre os
nodos.
Caso os nodos s0 e s1 não estejam conectados, esta conexão poderá ser criada. En-
tretanto, se s0 e s1 possuem mais que dois vizinhos comuns (Figura 5.1 (a)), a criação
da aresta cs0s1 levaria a criação de três faces incidentes em cs0s1 no passo 1.4 do Algo-
ritmo 3 (Figura 5.1 (b)), e portanto, a malha não seria uma variedade de dimensão 2. Por
isto, a condição 1.1 deste algoritmo não permite a criação desta aresta. A condição 1.3
determina que se s0 e s1 possuírem dois vizinhos comuns (sn1 e sn2), e se estes vizinhos
estiverem conectados (Figura 5.1 (f)), então a conexão entre eles deverá ser removida,
evitando cruzamento de arestas. A Figura 5.1 ilustra o processo de criação de aresta para
o caso em que a condição 1.2 do Algoritmo 3 for satisfeita (c,d), e para o caso em que
for satisfeita a condição 1.3 (e,f,g).
Note que o ECHL mantém a premissa de conectar dois vencedores do CHL padrão.
Então, todas as arestas possuem uma testemunha fraca. Porém o ECHL não requer que
as faces geradas também possuam uma testemunha fraca. Como consequência o com-
plexo simplicial gerado pelo ECHL não é uma complexo Delaunay fraco (Definição 22),
mas seu 1-esqueleto sim. Note também que nem todas as arestas criadas pelo CHL são
criadas pelo ECHL. Isto é consequência das heurísticas usadas para que as malhas gera-
das sejam variedades e para evitar o cruzamento de arestas: (a) o ECHL não cria uma
aresta caso seus vértices possuam mais que dois vizinhos em comuns; (b) o ECHL pode
remover uma aresta já existente para evitar cruzamento com a aresta nova.
76
5.1. GROWING SELF-RECONSTRUCTION MAPS (GSRM)
Algoritmo 3 Algoritmo do GSRM para aprendizado de conexões.
1 Se a conexão cs0s1 não existir:
[1.1] Se |Ns0 ∩Ns1 |> 2, a conexão cs0s1 não é criada
[1.2] Se |Ns0 ∩Ns1 |< 2, a conexão cs0s1 é criada; idades0s1 = 0.
[1.3] Se |Ns0 ∩Ns1 |= 2, a conexão cs0s1 é criada; idades0s1 = 0.Se ∃ csn1 sn2
| {sn1,sn2} ∈ Ns0 ∩Ns1 , então:
[1.3.1] C(t +1) =C(t)\{csn1sn2}
[1.3.2] F(t +1) = F(t)\Fcsn1 sn2
[1.4] Se a conexão cs0s1 foi criada, então:
F(t +1) = F(t)∪{ fs0s1sni} ∀sni ∈ Ns0 ∩Ns1
2 Se a conexão cs0s1 já existir:
[2.1] A conexão cs0s1 é reforçada: idades0s1 = 0.
[2.2] Para cada sn ∈ Ns0 , verifique: Se s1 está dentro da esfera de Thales comdiâmetro ||ws0 −wsn||, então a conexão cs0sn é removida.
3 A idade de todas as outras conexões do nodo s0 são incrementadas:
idades0si(t +1) = idades0si(t)+1, ∀si ∈ Ns0 \{s1}☛✡
✟✠5.1
[3.1] Se a idade de alguma aresta (conexão) ultrapassar o limiar idademax,todas as faces que tem esta conexão em um de seus lados é removida, em seguidaa aresta é removida.
4 Se após a remoção de arestas, restarem nodos isolados, estes nodos devem serremovidos.
77
CAPÍTULO 5. SOLUÇÃO PROPOSTA
(a) Ns0 ∩Ns1 > 2 (antes) (b) Ns0 ∩Ns1 > 2 (depois)
(c) Ns0 ∩Ns1 < 2 (antes) (d) Ns0 ∩Ns1 < 2 (depois)
(e) Ns0 ∩Ns1 = 2 e ∄csn1 sn1(antes) (f) Ns0 ∩Ns1 = 2 e ∃csn1 sn1
(antes)
(g) Ns0 ∩Ns1 = 2 (depois)
Figura 5.1 Criação da aresta (cs0s1) entre os dois vencedores usando ECHL.
78
5.1. GROWING SELF-RECONSTRUCTION MAPS (GSRM)
Remoção de Arestas e Faces
O GSRM usa dois mecanismos para remover arestas que se tornam inapropriadas du-
rante o processo de treinamento: O primeiro é também usado pelo GNG e usa um es-
quema baseado na idade das arestas. O segundo mecanismo leva em consideração a
condição de que as faces da malha de triângulos devem ser aproximadamente equiláte-
ras, e se baseia no conceito da esfera de Thales (Mole e Araújo, 2010).
Durante o processo de aprendizado os nodos mudam lentamente de posição em di-
reção às suas posições finais, isto acontece por meio do procedimento de adaptação de
vetores de pesos. Sendo assim, arestas criadas durante iterações anteriores podem se
tornar obsoletas em iterações posteriores, porque o par de nodos anteriormente selecio-
nados como primeiro e segundo vencedor, não se repete mais. Assim, as conexões entre
estes nodos precisam ser desfeitas.
As arestas obsoletas são identificadas pela variável idadecsis j, que é inicializada com
zero quando a aresta é criada, e assume novamente o valor zero sempre que os nodos si e
s j forem selecionados como primeiro (s0) e segundo vencedor (s1). Em cada iteração, a
idade das arestas que possuem s0 em uma de suas extremidades é incrementada em uma
unidade (Equação 5.1). Sempre que a idade de uma aresta ultrapassar um determinado
limiar (idademax) esta aresta deve ser removida do mapa. Até aqui, o procedimento de
remoção de arestas é idêntico ao GNG. O GSRM estende este procedimento levando em
consideração a definição das faces: antes da remoção de uma aresta, todas as faces que
têm esta aresta em um de seus lados são removidas (passo 3.1 do Algoritmo 3).
O distanciamento entre nodos causado pela mudança nos seus vetores de pesos im-
plica que as arestas formadas por dois nodos conectados em iterações anteriores do
aprendizado se tornem muito longas posteriormente. Os triângulos formados por es-
tas arestas devem ser removidos do mapa para que o algoritmo alcance o objetivo de
criar triângulos aproximadamente equiláteros. O GSRM usa um mecanismo baseado no
conceito da esfera de Thales (Jockusch e Ritter, 1999; Mole e Araújo, 2010) para iden-
tificar estas arestas: Sempre que os nodos vencedores (s0 e s1) já estiverem conectados,
as arestas entre s0 e seus vizinhos topológicos são consideradas candidatas para remo-
ção. Uma aresta (cs0sn) é removida sempre que o nodo s1 estiver dentro a esfera de Tales
com diâmetro ||ws0 −wsn ||. Para verificar esta condição calcula-se o ângulo (α) entre os
vetores u e v, sendo u = wsn −ws1 e v = ws0 −ws1 , ∀sn ∈ Ns0 . A aresta cs1sn é removida
quando α > π2 , conforme ilustra a Figura 5.2.
A Equação 3.22 descreve como fica o conjunto de nodos (A) após a execução do pro-
cedimento de atualização de topologia. As Equações 5.2 e 5.3 descrevem como podem
79
CAPÍTULO 5. SOLUÇÃO PROPOSTA
Figura 5.2 Remoção de aresta baseado na esfera de Thales.
ficar os conjuntos de faces (F) e de conexões (C).
C(t +1) =
C(t)\Cvelha condição 1
C(t)∪{cs0,s1}\Cvelha condições 2, 3 ou 4
C(t)∪{cs0,s1}\{csns′n}\Cvelha condição 5
C(t)\Cvelha \Clonga condição 6
☛✡
✟✠5.2
F(t +1) =
F(t)\Fvelha condições 1 e 2
F(t)∪{ fs0s1sn}\Fvelha condição 3
F(t)∪{ fs0s1sn, fs0s1s′n}\Fvelha} condição 4
F(t)∪{ fs0s1sn, fs0s1s′n}\{ fsns′ns0, fsns′ns1
}\Fvelha} condição 5
F(t)\Fvelha \Flonga condição 6
☛✡
✟✠5.3
Em que:
sn,s′n ∈ Ns0 ∩Ns1
Cvelha = {cs0sn} ∀sn ∈ Ns0 | ages0sn > agemax,
Clonga = {cs0sn} ∀sn ∈ Ns0 | wsn −ws1∠ws0 −ws1 >π2
Fvelha = { fs0snsi} ∀sn ∈ Ns0 e cs0sn ∈Cvelha
Flonga = { fs0snsi} ∀sn ∈ Ns0 e cs0sn ∈Clonga
Avelha = {si} ∈ A |Nsi =∅
Em cada iteração, determina-se qual das opções de atualização de topologia e faces
devem ser aplicadas, de acordo com as condições seguintes:
1. ∄ cs0,s1 e |Ns0 ∩Ns1|> 2
2. ∄ cs0,s1 e |Ns0 ∩Ns1|= 0
3. ∄ cs0,s1 e |Ns0 ∩Ns1|= 1
80
5.1. GROWING SELF-RECONSTRUCTION MAPS (GSRM)
(a) Antes da Inserção (b) Após a Inserção
Figura 5.3 Inserção de novo vértice no GSRM.
4. ∄ cs0,s1 e |Ns0 ∩Ns1|= 2 e ∄ csn,s′n
5. ∄ cs0,s1 e |Ns0 ∩Ns1|= 2 e ∃ csn,s′n
6. ∃ cs0,s1
5.1.5 Atualização de Nodos
Um novo nodo (sr) é inserido no mapa a cada λ iterações. Assim como o GNG, o GSRM
insere o novo nodo entre dois nodos já existentes no mapa (sq e s f ), conectados entre
si. A conexão entre sq e s f é removida, e o novo nodo é conectado aos nodos sq e s f .
Entretanto, o GSRM remove os triângulos que possuem a aresta csqs f como um de seus
lados antes de remover esta aresta e criar as novas.
A inserção de um novo nodo entre os nodos sq e s f tem por objetivo reduzir o erro
destes nodos, e isto deve se refletir em seus contadores de erro, multiplicando-os por um
taxa α , conforme mostra a Equação 3.23. O erro do novo nodo é inicializado com a
média dos erros de sq e s f , veja a Equação 5.4.
Esr =Esq +Es f
2
☛✡
✟✠5.4
O procedimento de inserção de um novo vértice é descrito no Algoritmo 4. A Figura
5.3 ilustra este procedimento: (a) mostra os nodos sq e s f , (b) mostra como fica a malha
após a inserção do novo vértice.
O conjunto de nodos (A(t +1)), conexões (C(t +1)) e faces (F(t +1)) do mapa após
a inserção do novo nodo são descritas pelas Equações 3.24, 3.25 e 5.7 respectivamente.
F(t +1) = F(t)\{ fsq,s f ,sn} ∀sn ∈ Nsq ∩Ns f
☛✡
✟✠5.7
81
CAPÍTULO 5. SOLUÇÃO PROPOSTA
Algoritmo 4 Algoritmo do GSRM para inserção de novos nodos.
1. Selecione o nodo sq com maior contador de sinal, e seu vizinho s f com maiorcontador de sinal, conforme descrito nas Equações seguintes:
sq = argmax{Esi} ∀si ∈ A☛✡
✟✠5.5
s f = argmax{Esi} ∀si ∈ Nsq
☛✡
✟✠5.6
2. Insira um novo vértice sr e inicialize seu vetor de pesos com a média dos vetoresde pesos de sq e s f (Equação 3.8).
3. Inicialize o contador de erro com média entre os valores Esq e Es f (Equação 5.4).
4. Atualize os contadores de erro de sq e s f multiplicando-os por uma taxa α (Equa-ção 3.23).
5. Remova todas as faces (triângulos) que possuem a aresta csqs f como um de seuslados.
6. Remova a aresta csqs f .
7. Crie duas novas arestas: csrsq e csrs f
5.1.6 Critério de Parada
O treinamento do GSRM é encerrado quando o mapa atinge um número pré-estabelecido
de nodos, ou seja, quando |A|= Nmax.
5.1.7 Aprendizado de Topologia
Ao final do treinamento, os nodos de um mapa gerado pelo GSRM estão distribuídos de
modo a representar a distribuição dos dados de entrada. Entretanto, a topologia da super-
fície alvo é apenas parcialmente representada pelo mapa. Algumas arestas necessárias
podem não ter sido criadas porque nenhuma amostra capaz de ativar os dois nodos de
suas extremidades simultaneamente foi apresentada no momento apropriado durante o
processo de aprendizado. Por exemplo, se estas amostras foram apresentadas antes da
criação de pelo menos um destes nodos, mas não foram apresentadas outra vez após a
inserção deste nodo.
Também é possível que algumas arestas longas permaneçam no mapa após a finali-
zação do processo de aprendizado, tendo em vista que a detecção e remoção de arestas
longas não acontece a cada iteração, mas apenas quando o nodo vencedor já estiver
82
5.1. GROWING SELF-RECONSTRUCTION MAPS (GSRM)
conectado ao segundo vencedor. Ambos os problemas de não criação de arestas ne-
cessárias, e não remoção de arestas longas, são consequências do comportamento não
determinístico do algoritmo de aprendizado. Deste modo, se faz necessário um processa-
mento adicional para completar o aprendizado da topologia da superfície alvo. Para isto,
visita-se todas as arestas removendo-se as arestas longas, juntamente com suas faces.
Em seguida, apresenta-se cada amostra de entrada e executa-se o passo 1 do Algoritmo
3. Durante esta etapa, os vértices do mapa não mudam mais de posição, e como todas as
amostras são apresentadas, todas as arestas possíveis de serem criadas pelo Algoritmo 3,
serão criadas.
5.1.8 Pós-processamento
Alguns polígonos aproximadamente regulares permanecem não triangulados após a etapa
de aprendizado de topologia. Isto acontece porque qualquer amostra interna a estes po-
lígonos faz com que dois nodos já conectados sejam vencedores, tornado o ECHL inca-
paz de triangular estes polígonos. A Figura 5.4 ilustra um quadrilátero regular, note que,
qualquer amostra na região I terá os nodos s1 e s2 como vencedores, qualquer amostra
na região II terá os nodos s2 e s3 como vencedores, e assim por diante. Logo a diagonal
necessária para criação dos triângulos pode não ser criada, pois ainda que exista uma
amostra exatamente no centro do polígono, quaisquer dois vértices podem ser seleciona-
dos vencedores. Este exemplo é apenas ilustrativo, já que em geral os polígonos obtidos
não são regulares. Mesmo assim, como a nuvem de entrada é um conjunto de pontos
finitos, é possível que as testemunhas para geração de algumas arestas, embora existam
na superfície original, não estejam presentes do conjunto de pontos amostrados. Sem
estas arestas o CHL não consegue triangular alguns polígonos que representam buracos
na malha gerada. Nos experimentos realizados a grande maioria destes polígonos possui
quatro ou cinco vértices. Quando o polígono possui quatro vértices (quadrilátero), basta
criar uma de suas diagonais, conectando dois de seus nodos que estejam desconectados,
e substituir o quadrilátero por dois triângulos. A diagonal é escolhida de modo que a
soma dos ângulos opostos nos triângulos adjacentes não seja maior que π . Esta escolha
favorece a criação de arestas que satisfazem localmente a condição da iDT de superfícies
pwf, conforme apresentada por Bobenko e Springborn (2007). Para polígonos com mais
de quatro vértices, um novo vértice é inserido no centro e conectado a todos os vértices
do polígono formando nv triângulos, onde nv é o número de vértices do polígono. Este
é o mesmo mecanismo usado por Barhak (2002).
83
CAPÍTULO 5. SOLUÇÃO PROPOSTA
Figura 5.4 CHL não consegue triangular polígonos regulares ou aproximadamente regulares,pois não existem amostras para disparar as conexões necessárias.
5.1.9 Algoritmo de Treinamento do GSRM
A descrição passo-a-passo do algoritmo de treinamento do GSRM é apresentada no Al-
goritmo 5.
5.2 GSRM baseado em Complexo de Testemunha e iDT
O GSRM é capaz de gerar uma malha de triângulos a partir de uma nuvem de pontos
não-estruturados amostrados da superfície de um objeto alvo. O algoritmo de aprendi-
zado do GSRM é capaz de distribuir um conjunto de vértices para representar a distribui-
ção dos dados de entrada. Além disto, o GSRM conecta estes vértices produzindo um
conjunto de arestas e faces triangulares através de uma variação do aprendizado Hebbi-
ano Competitivo que foi chamado de ECHL (Extended Competitive Hebbian Learning).
O ECHL mantém a mesma regra para a criação de arestas que o CHL padrão, que con-
siste em conectar o primeiro e o segundo nodos mais próximos a um vetor de entrada.
Martinetz e Schulten (1994) mostraram que as arestas criadas de acordo com esta regra
pertencem a um grafo que é um subconjunto da triangulação de Delaunay com respeito
às posições atuais dos nodos. Segundo De Silva (2008), o trabalho de Martinetz e Schul-
ten (1994) é um caso particular de seu teorema das testemunha fracas, onde os simplexos
são arestas.
O GSRM-iDT gera inicialmente um 2-complexo simplicial em que todos os simple-
xos (arestas e triângulos) possuem uma testemunha fraca, portanto um complexo Delau-
nay fraco segundo a definição apresentada por De Silva (2008) e no Capítulo 2. De Silva
84
5.2. GSRM BASEADO EM COMPLEXO DE TESTEMUNHA E IDT
Algoritmo 5 Algoritmo de Aprendizado do GSRM.
1. Inicialize o mapa A e atribua valores iniciais aos parâmetros de treinamento, con-forme apresentados na Seção 5.1.1.
2. Sorteie aleatoriamente um vetor de entrada ξ ∈ Ξ.
3. Encontre o primeiro (s0) e o segundo (s1) nodos mais próximos à amostra atual ξde acordo com a distância Euclidiana (ver Seção 5.1.2).
4. Atualize as conexões do mapa de acordo com Algoritmo 3, explicado na Seção5.1.4.
5. Mova s0 e seus vizinhos topológicos em direção à ξ, de acordo com o procedi-mento de adaptação dos vetores de pesos apresentado na Seção 5.1.3.
6. Se o número de amostras apresentadas até o momento é múltiplo de λ , então insiraum novo nodo no mapa de acordo com o procedimento descrito pelo Algoritmo 4,explicado na Seção 5.1.5.
7. Decremente o contador de erro de todos os nodos com a taxa β .
Esi(t +1) = Esi(t)−β ∗Esi(t) ∀si ∈ A☛✡
✟✠5.8
8. Se |A|< Nmax retorne ao passo 2.
9. Execute o procedimento de aprendizado de topologia (Seção 5.1.7).
10. Execute o procedimento de pós-processamento (Seção 5.1.8).
85
CAPÍTULO 5. SOLUÇÃO PROPOSTA
(2008) argumenta que o complexo de testemunhas fracas de um conjunto de vértices L
com respeito a um conjunto de pontos W amostrados em uma variedade M é uma boa
aproximação de M, utilizando a seguinte cadeia de equivalências:
M= Del(L,M) =Wit(L,M) =Wit(L,W )
A triangulação de Delaunay restrita Del(L,M) é bem conhecida por ser uma aproxi-
mação fiel da variedade M subjacente ao conjunto de pontos L (Amenta e Bern, 1998;
Cazals e Giesen, 2006; Boissonnat e Oudot, 2005). A segunda equivalência da cadeia,
Del(L,M) = Wit(L,M), é provada por Attali et al. (2007) para complexos simpliciais
de dimensão k = 1,2 (curvas e superfícies), e constitui uma extensão do teorema de tes-
temunhas fracas de De Silva (2008). Para terceira equivalência, Wit(L,M) =Wit(L,W ),
De Silva (2008) argumenta que: se uma dada interseção Wσ ∩M é não vazia, existe uma
probabilidade não-nula de que ela possua um elemento representativo em Wσ ∩W , em
que W é o conjunto de testemunhas disponíveis e Wσ é a região de testemunhas fracas
de σ :
Wσ = {x ∈ Rn|x é uma testemunha fraca para σ }
Para o algoritmo de aprendizado de topologia proposto nesta tese, não existe garan-
tias de que esta suposição seja verdadeira. Assim, é possível que alguns simplexos σ
que possuem testemunha fraca em M, não possuam uma testemunha fraca em W . A
consequência observada disto é o aparecimento de buracos na malha que não existem na
superfície original M. Este problema é contornado atrás de pós-processamento. Primei-
ramente, são criados os triângulos que não possuem testemunhas fracas em W mas cujas
arestas possuem, resultando na versão preguiçosa do complexo de testemunhas (De Silva
e Carlsson, 2004). Em seguida é executado algum algoritmo para preenchimento de bu-
racos, como o que foi utilizado pelo GSRM (Subseção 5.1.8), ou o disponibilizado pela
ferramenta OpenFlipper1 (Möbius e Kobbelt, 2012).
Uma vez que o GSRM-iDT está baseado no teorema das testemunhas fracas e em
mapas SOM-TVS, a correspondência considerada entre as notações usadas no Capítulo
2, e nos Capítulos 3 e 4 é tratada. As testemunhas (w) correspondem aos vetores de
entrada da notação usada pelos SOM-TVS, também chamados de amostras e denotados
por ξ. O conjunto de testemunhas (W ) é denotado por Ξ na notação dos SOM-TVS. Os
vetores de pesos dos nodos de um SOM-TVS correspondem aos pontos de referência
1http://www.openflipper.org/
86
5.2. GSRM BASEADO EM COMPLEXO DE TESTEMUNHA E IDT
usados na notação dos complexos de testemunhas. O conjunto de nodos A de um SOM-
TVS corresponde ao conjunto de pontos de referência L. As conexões (denotadas por
c) e faces (denotadas por f ) usadas na descrição dos Mapas Auto-organizáveis, são k-
simplexos (σ ) de dimensão k = 1 e k = 2, respectivamente. O mapa compreende todos
os vértices, arestas e faces, e representa um complexo simplicial K.
O procedimento proposto pelo GSRM-iDT para reconstrução de superfícies usa uma
heurística para garantir que as malhas geradas sejam 2-variedades. Esta heurística utiliza
o critério local da triangulação de Delaunay intrínseca (iDT) de superfícies planas por
partes apresentada por Bobenko e Springborn (2007) para eliminar faces incidentes em
arestas que não satisfazem este critério. O GSRM-iDT, apresentado nesta Seção, foi
publicado em do Rego e Araújo (2010).
O GSRM-iDT difere do GSRM nos seguintes aspectos: (a) Os passos de ordena-
mento e de reconstrução são desmembrados: primeiro os vértices são distribuídos no
mapa, e em seguida a topologia é construída. Deste modo, não é preciso armazenar
informações sobre as faces da malha durante o passo de ordenamento; (b) O único me-
canismo de remoção de arestas é o que se baseia no conceito da esfera de Thales; (c)
O mecanismo de criação de faces considera três vencedores com respeito a uma dada
amostra, de modo que todos os simplexos e seus subsimplexos possuam uma testemu-
nha w ∈ W , e os simplexos de dimensão máxima sejam triângulos; (d) A heurística
utilizada para geração de malhas que são 2-variedades considera o critério local da iDT
(Bobenko e Springborn, 2007).
Os parâmetros de treinamento são os mesmos utilizados pelo GSRM, com exceção
do parâmetro idademax, que não é utilizado pelo GSRM-iDT. A inicialização do mapa,
a competição entre nodos e a adaptação dos vetores de pesos durante a etapa de orde-
namento são realizadas do mesmo modo que no GSRM. O mapa usado durante a etapa
de reconstrução é composto pelos vértices aprendidos na etapa de ordenamento e inici-
almente não possui conexões. Nesta etapa não são existe adaptação de vetores de pesos
nem atualização de nodos.
5.2.1 Parâmetros de Treinamento de Inicialização do Mapa
Fase de Ordenamento
O parâmetros de treinamento são os mesmos utilizados pelo GSRM, com exceção do
parâmetro idademax, que não é utilizado pelo GSRM-iDT. O mapa é inicializado do
mesmo modo que no GSRM.
87
CAPÍTULO 5. SOLUÇÃO PROPOSTA
Fase de Reconstrução
O algoritmo de treinamento usado nesta fase não utiliza parâmetros. A estrutura do mapa
inicial é descrita a seguir:
• O conjunto de nodos do mapa, juntamento com seus vetores de pesos, são os que
foram gerados durante a fase de ordenamento.
• Inicialmente não existem conexões: C =∅.
O mapa inicial também pode ser descrito como sendo o complexo simplicial com os
seguintes elementos: K = {{s0}∪{s1}∪ ...∪{sn−1}∪∅} onde as coordenadas dos n
pontos foram aprendidas durante a fase de ordenamento.
5.2.2 Competição entre Nodos
Fase de Ordenamento
Na fase de ordenamento utiliza-se o mesmo procedimento de competição do GSRM,
selecionando dois nodos s0 e s1 que satisfazem as Equações 3.1 e 3.21, respectivamente.
O valor do contador de erro do nodo s0 é incrementado segundo a Equação 3.3.
Fase de Reconstrução
Em vez de sortear as amostras aleatoriamente, o algoritmo utilizado durante esta fase
visita todas as amostras, de modo que cada uma delas seja apresentada uma vez ao mapa.
Para cada amostra apresentada são selecionados três nodos vencedores s0, s1 e s2, que
satisfazem, respectivamente, as Equações 3.1, 3.21 e 4.15.
5.2.3 Adaptação dos Vetores de Pesos
Durante a fase de ordenamento os vetores de pesos são atualizados do mesmo modo que
no GSRM. Durante a fase de reconstrução os vetores de pesos não são atualizados.
5.2.4 Atualização de Topologia
Durante a etapa de ordenamento são criadas conexões entre os nodos, mas não são cri-
ados triângulos (faces). As conexões criadas nesta etapa servem para estabelecer as
relações de vizinhança entre os nodos. Estas conexões são necessárias para determinar
a posição adequada para inserir novos nodos no mapa. As arestas e faces que definem
88
5.2. GSRM BASEADO EM COMPLEXO DE TESTEMUNHA E IDT
a topologia do mapa final gerado pelo GSRM-iDT são estabelecidas na etapa de recons-
trução.
Fase de Ordenamento
Durante a fase de ordenamento o CHL é utilizado para a criação das conexões. O obje-
tivo desta etapa é distribuir o conjunto de pontos de referência (vértices) para o complexo
gerado na etapa de reconstrução, desta forma as arestas são criadas para manter as rela-
ções de vizinhança necessárias para o procedimento de inserção de vértices. Como os
vértices mudam de posição e novos vértices são inseridos durante o treinamento, arestas
representando relações de vizinhança obsoletas precisam ser removidas do mapa. Em
cada iteração da fase de ordenamento, o GSRM-iDT verifica se o nodo s1 está dentro
da esfera de Tales cujo diâmetro é ||ws0 - wsn || (∀sn ∈ Ns0). A aresta cs0sn é eliminada
se esta condição for verdadeira (a Seção 5.1.4 descreve como verificar se a condição é
verdadeira). O Algoritmo 6 descreve o procedimento de inserção e remoção de conexões
na fase de ordenamento do GSRM-iDT.
Algoritmo 6 Algoritmo para inserção e remoção de conexões - fase de ordenamento
1. Se a conexão cs0s1 não existir:
[1.1] Crie a conexão cs0s1 .
2. Para cada sn ∈ Ns0 verifique: Se a s1 está dentro da esfera de Thales com diâmetro||ws0 - wsn ||, então:
[2.1] A conexão cs0sn é removida.
[2.2] Os vértices que ficarem isolados são removidos.
As Equações 3.22 e 5.9 mostram como ficam, respectivamente, o conjunto de nodos
e de conexões do mapa após a realização do procedimento para inserção e remoção de
arestas da fase de ordenamento do GSRM-iDT.
C(t +1) =
C(t)∪{cs0s1}\Clonga
C(t)\Clonga
☛✡
✟✠5.9
Onde: Clonga = {cs0sn} ∀sn ∈ Ns0 | wsn −ws1∠ws0 −ws1 >π2
89
CAPÍTULO 5. SOLUÇÃO PROPOSTA
Aprendizado de Topologia - Fase de Reconstrução
Durante esta etapa são criados os simplexos (arestas e triângulos) que definirão a topo-
logia da malha. O algoritmo utilizado é fundamentado no teorema da testemunha fraca:
cada k-simplexo (0 ≤ k ≤ 2) criado possui uma testemunha fraca, assim como seus sub-
simplexos. Durante esta etapa os vértices do mapa não sofrem mais modificações em
seus vetores de pesos, nem são adicionados novos vértices ao mapa. Assim, não se faz
necessário nenhum mecanismo para remoção de arestas obsoletas. A heurística utilizada
para garantir malhas que sejam variedades impede a criação de um triângulo, caso pelo
menos uma de suas arestas já possua duas faces incidentes. O critério local da iDT para
superfícies pwf é usado como parte desta heurística, da modo que quando uma aresta e
com duas faces incidentes viola este critério, as faces que compartilham esta aresta são
removidas do mapa, favorecendo a criação de novos triângulos incidentes em e. Note
que esta heurística não verifica o critério durante a criação das arestas, mas segundo os
experimentos realizados nenhuma das arestas produzidas ao final o violam.
Durante esta etapa, todos os vetores de entrada são apresentados ao mapa, de modo
que todos os simplexos testemunhados são criados, com dimensionalidade máxima 2.
Alguns podem ser removidos para garantir a geração de malhas variedades. O algoritmo
7 descreve o procedimento utilizado pelo GSRM-iDT para aprendizado de topologia
usado na fase de reconstrução. Neste algoritmo não são criadas apenas arestas, mas
simplexos de dimensão k = 1 (aresta) e k = 2 (triângulo). A notação σsi...sk é usada para
denotar o simplexo σ = {si, ...,sk}.
Algoritmo 7 Algoritmo de Aprendizado de Topologia - fase de reconstrução
1. Se a aresta σs0s1 não existir:
[1.1] Crie a aresta σs0s1 .
2. Se existem os simplexos σs0s2 e σs1s2 , então todas as faces do simplexo σs0s1s2 pos-suem uma testemunha fraca. Como este simplexo também possui uma testemunhafraca (a amostra atual), então σ = {s0s1s2} pertence ao complexo de testemunhasfracas.
[2.1] Se alguma(s) das arestas σsis j ∈ {σs0s1,σs0s2,σs1s2} não for localmenteDelaunay, remova os triângulos que possuem a aresta σsis j como um de seus lados.
[2.2] Se as arestas σs0s1,σs0s2 e σs1s2 possuírem menos que duas faces, entãocrie o triângulo σs0s1s2 .
Note que a condição estabelecida no passo 2.2 do Algoritmo 7 impede a criação de
90
5.2. GSRM BASEADO EM COMPLEXO DE TESTEMUNHA E IDT
malhas que não sejam 2-variedades. A remoção de faces em que um dos lados é uma
aresta c não localmente Delaunay, permite que sejam criadas novas faces com o lado c. O
procedimento utilizado para verificar se uma aresta é localmente Delaunay foi proposto
em (Fisher et al., 2006), e está descrito no Algoritmo 8.
As Equações 5.10 e 5.11 descrevem, respectivamente, como ficam o conjunto de
conexões e de faces após cada iteração do procedimento de aprendizado de topologia
realizado durante a etapa de reconstrução do GSRM-iDT.
C(t +1) =
C(t)∪{cs0s1} ∄ cs0s1
C(t) ∃ cs0s1
☛✡
✟✠5.10
F(t +1) =
F(t)\Fnd ∪{ fs0s1s2} condição 1
F(t)\Fnd condição 2
F(t) condição 3
☛✡
✟✠5.11
Onde Fnd é o conjunto de faces que possuem alguma aresta csis j ∈ {cs0s1 ,cs0s2,cs1s2}, que
não satisfaz o critério local da iDT, como um de seus lados.
As condições que definem o novo conjunto de faces são:
1. ∃ {cs0s2 ,cs1s2} e |Fcsis j|< 2 ∀csis j ∈ {cs0s1,cs0s2,cs1s2}
2. ∃ {cs0s2 ,cs1s2} e ∃ csis j ∈ {cs0s1,cs0s2 ,cs1s2} | |Fcsis j| ≥ 2
3. ∄ cs0s2 ou ∄ cs1s2
Onde Fcsis jé o conjunto das faces que possuem a aresta csis j como um de seus lados, e
|Fcsis j| é o número de faces neste conjunto.
Além de descrever o conjunto de arestas e faces separadamente, também são descri-
tos o complexo simplicial resultante após cada iteração do procedimento de aprendizado
de topologia:
91
CAPÍTULO 5. SOLUÇÃO PROPOSTA
K(t +1) =
K(t)∪σs0s1 ∪σs0s1s2 \{σsis jsk | ver anotação abaixo* } condição 1
K(t)∪σs0s1 \{σsis jsk | ver anotação abaixo* } condição 2
K(t)∪σs0s1 condição 3
K(t)∪σs0s1s2 \{σsis jsk | ver anotação abaixo* } condição 4
K(t)\{σsis jsk | ver anotação abaixo* } condição 5
K(t) condição 6☛✡
✟✠5.12
onde K(t) e K(t + 1) denotam o complexo simplicial no início da iteração atual t e
seguinte t +1;
*σsis jsk é um 2-simplexo tendo algum 1-subsimplexo (aresta) σsis j ∈ {σs0s1,σs0s2,σs1s2}que viola o critério local da iDT.
As condições 1 a 4 são explicadas a seguir:
1. O simplexo σs0s1 não existe; os simplexos σs0s2 e σs1s2 existem; o simplexo σs0s1s2
não existe e cada um de seus 1-subsimplexos (arestas) pertencem a menos que
dois 2-simplexos (triângulos).
2. O simplexo σs0s1 não existe; os simplexos σs0s2 e σs1s2 existem; o simplexo σs0s1s2
já existe, ou algum de seus 1-subsimplexos (arestas) pertencem a dois 2-simplexos
(triângulos).
3. O simplexo σs0s1 não existe; os simplexos σs0s2 e/ou σs1s2 não existem;
4. O simplexo σs0s1 já existe; os simplexos σs0s2 e σs1s2 existem; o simplexo σs0s1s2
não existe e cada um de seus 1-subsimplexos (arestas) pertencem a menos que
dois 2-simplexos (triângulos).
5. O simplexo σs0s1 já existe; os simplexos σs0s2 e σs1s2 existem; o simplexo σs0s1s2 já
existe, ou algum de seus 1-subsimplexos (arestas) pertencem a dois 2-simplexos
(triângulos).
6. O simplexo σs0s1 já existe; os simplexos σs0s2 e σs1s2 não existem;
92
5.2. GSRM BASEADO EM COMPLEXO DE TESTEMUNHA E IDT
Algoritmo 8 Algoritmo para verificar se uma conexão csis j é localmente iDT.
1. Se csis j é uma aresta de bordas, ou seja, possui apenas uma face, retorne Verda-deiro.
2. Calcule o comprimento dos lados dos triângulos adjacentes a csis j .
3. Para cada f ∈ Fcsis j, calcule a tangente do meio ângulo oposto ao lado csis j em
f , da seguinte maneira: Sejam |a|, |b| e |c| os comprimentos dos lados de umtriângulo, e seja α o ângulo oposto ao lado a, então:
tanα
2=
√
(|a|− |b|+ |c|)(|a|+ |b|− |c|)(|a|+ |b|+ |c|)(−|a|+ |b|+ |c|)
☛✡
✟✠5.13
4. Calcule os pesos cotangentes usando a identidade:
cotα =1− tan2 α
2
2tanα2
☛✡
✟✠5.14
5. Se o peso pesocsis jfor não negativo, retorne Verdadeiro. Senão retorne Falso.
pesocsis j= cotαk
i j + cotα li j,
☛✡
✟✠5.15
onde αki j é o ângulo oposto à aresta ei j na face fsis jsk .
5.2.5 Atualização de Nodos
Durante a fase de ordenamento, novos vértices são periodicamente inseridos no mapa,
seguindo o procedimento descrito pelo Algoritmo 4, exceto pelo passo 5 deste algoritmo
que não é executado pelo GSRM-iDT, pois não há criação de faces durante a fase de
ordenamento. Durante a fase de reconstrução não há inserção de nodos no mapa.
5.2.6 Critério de Parada
Na fase de ordenamento, o aprendizado é encerrado quando um número desejado de
nodos (Nmax) é atingido. Na fase de reconstrução, o aprendizado é encerrado após a
apresentação de todas as amostras.
93
CAPÍTULO 5. SOLUÇÃO PROPOSTA
5.2.7 Pós-processamento
Após a fase de reconstrução podem aparecer buracos indesejados quando existirem sim-
plexos α tais que Wα ∩M for não vazia e Wα ∩W for vazia. Se o simplexo α for um
triângulo que não possui uma testemunha fraca em W , mas cada uma de suas arestas
possui, então o triângulo é criado, resultando na versão preguiçosa do complexo de tes-
temunhas. Caso o simplexo α seja uma aresta sem testemunha fraca em W , então os
buracos resultantes são polígonos com quatro ou mais vértices. Em uma etapa de pós-
processamento, utiliza-se algum algoritmo de preenchimento de buracos, como o que
foi utilizado pelo GSRM ou o que está disponível na ferramenta OpenFlipper (Möbius e
Kobbelt, 2012).
5.2.8 Algoritmo de Treinamento do GSRM-iDT
As descrições passo-a-passo dos algoritmos de treinamento das etapas de ordenamento
e reconstrução do GSRM-iDT são respectivamente apresentadas nos Algoritmos 9 e 10.
Algoritmo 9 Algoritmo de Aprendizado - Fase de Ordenamento do GSRM-iDT.
1. Inicialize o mapa A e atribua valores iniciais aos parâmetros de treinamento, con-forme apresentados na Seção 5.2.1.
2. Sorteie aleatoriamente um vetor de entrada ξ ∈ Ξ.
3. Encontre o primeiro (s0) e o segundo (s1) nodos mais próximos à amostra atual ξde acordo com a distância Euclidiana (ver Seção 5.2.2).
4. Atualize as conexões do mapa de acordo com Algoritmo 6, explicado na Seção5.2.4.
5. Mova s0 e seus vizinhos topológicos em direção à ξ, de acordo com o procedi-mento de adaptação dos vetores de pesos apresentado na Seção 5.2.3.
6. Se o número de amostras apresentadas até o momento é múltiplo de λ , então insiraum novo nodo no mapa de acordo com o procedimento descrito na Seção 5.2.5.
7. Decremente o contador de erro de todos os nodos com a taxa β .
Esi(t +1) = Esi(t)−β ∗Esi(t) ∀si ∈ A☛✡
✟✠5.16
8. Se |A|< Nmax retorne ao passo 2.
94
5.3. GSRM-IDT COM TEMPO DE TREINAMENTO REDUZIDO
Algoritmo 10 Algoritmo de Aprendizado - Fase de Reconstrução do GSRM-iDT.
1. O mapa inicial é composto pelos nodos aprendidos na fase de ordenamento e pornenhuma conexão (ver Seção 5.2.1).
2. Para cada vetor de entrada ξ ∈ Ξ, faça:
[2.1] Encontre o primeiro (s0), o segundo (s1) e o terceiro (s2) nodos mais pró-ximos à amostra atual ξ de acordo com a distância Euclidiana (ver Seção 5.2.2).
[2.2] Atualize as conexões e faces do mapa de acordo com o Algoritmo 7,explicado na Seção 5.2.4.
3. Execute o procedimento de pós-processamento (Seção 5.2.7).
5.3 GSRM-iDT com Tempo de Treinamento Reduzido
O alto tempo de processamento consumido pelo GSRM-iDT limita seu uso em aplica-
ções reais em que as superfícies são muito detalhadas. Quanto mais detalhes a serem
aprendidos, maior o número de amostras necessárias. Além disto, mais elementos (vérti-
ces e faces) deverá ter a malha para representar estes detalhes. Deste modo, uma versão
do GSRM-iDT com tempo de treinamento reduzido (GSRM-TTR) foi apresentada em
Rego et al. (2011). Esta versão foi testada com sucesso na reconstrução de estruturas
anatômicas odontológicas de seres humanos.
As etapas que tornam o algoritmo de treinamento do GSRM-iDT lento são: (a) Com-
petição entre nodos (passo 3 do Algoritmo 9 e passo 2.1 do Algoritmo 10): pois todos os
nodos são visitados para encontrar o nodo mais próximo à amostra atual; (b) Atualiza-
ção de nodos (passo 6 do Algoritmo 9): pois todos os nodos são visitados para encontrar
o nodo com maior contador de erro; (c) Decremento dos contadores de erro de todos
os nodos em cada iteração (passo 7 do Algoritmo 9): pois para isto todos os nodos são
visitados; (d) Apresentação de todas as amostras para criação de arestas durante a fase
de reconstrução (passo 2 do Algoritmo 10). Os fatores (a), (b), (c) fazem com que o
tempo de treinamento aumente com o aumento do número de nodos na malha. O fator
(d) faz com que o tempo gasto na etapa de reconstrução aumente tanto com o aumento
do número de amostras de entrada quanto do número de vértices na malha. Além disto,
a remoção de nodos isolados quando uma aresta é removida torna o crescimento da rede
mais lento, e nem sempre o nodo removido representa uma região com densidade de
probabilidade baixa. Algumas vezes um novo nodo pode ser inserido nas proximidades
do nodo previamente removido.
95
CAPÍTULO 5. SOLUÇÃO PROPOSTA
Para reduzir o tempo gasto na busca pelos vencedores durante a competição de nodos
foram utilizadas soluções diferentes na fase de reconstrução e na fase de ordenamento.
Na fase de ordenamento foi utilizado um algoritmo de busca baseado na soma dos com-
ponentes (Sum of Components - SOC) dos vetores de pesos e dos vetores de entrada
apresentado por (Cheung e Constantinides, 1993), onde os autores comparam o método
baseado em SOC com outros métodos de busca e afirmam que o SOC apresenta melhor
performance para busca de vizinhos mais próximos em algoritmos de treinamento de
mapas auto-organizáveis.
De maneira geral, o algoritmo baseado em SOC utiliza uma estrutura de dados sim-
ples, que consiste de uma lista em que os vetores de pesos (wsi) dos nodos são ordenados
de acordo com a soma de seus componentes (ιsi = xwsi+ywsi
+ zwsi). A busca inicia com
uma busca binária pelo nodo sb cuja soma de componentes ιsb é a mais próxima da soma
de componentes da amostra ξ (ιξ), este nodo representa a estimativa inicial do vencedor.
Em seguida, a busca prossegue para baixo e para cima na lista ordenada. Sempre que
for encontrado um nodo mais próximo a ξ a estimativa do nodo vencedor sb é atuali-
zada. A busca é encerrada quando, nos dois sentidos, a diferença (ιsi − ιξ)2 for maior ou
igual a um limiar t = k ∗d2, onde k é a dimensão dos vetores de pesos, e d é a distância
Euclidiana entre a amostra ξ e o vetor de pesos atualmente estimado como vencedor
(wsb).
Os vetores de pesos em um Mapa Auto-organizável sofrem atualizações durante todo
o treinamento, sendo possível que a lista ordenada se torne desatualizada em algum
momento. Portanto, é desejável que esta lista seja atualizada periodicamente. Entre-
tanto, mesmo que a lista esteja desatualizada, o algoritmo baseado em SOC conseguirá
encontrar o novo vencedor corretamente, ainda que o número de nodos visitados até
encontrá-lo aumente. Isto não acontece no caso de uma estrutura de árvore, em que o
nodo vencedor pode não ser encontrado se a estrutura não estiver atualizada.
O algoritmo baseado em SOC que é apresentado por Cheung e Constantinides (1993)
encontra um único vencedor. Porém, o GSRM-iDT precisa encontrar dois vencedores
durante a fase de ordenamento. Assim, o algoritmo apresentado por Cheung e Cons-
tantinides (1993) foi estendido para encontrar n vencedores. Para isto são encontradas
inicialmente n estimativas iniciais dos vencedores, e o limiar para que a busca seja encer-
rada é t = k ∗d2n , onde dn é a distância Euclideana entre a amostra ξ e o vetor de pesos
da estimativa do n-ésimo vencedor. O Algoritmo 11 descreve o procedimento de busca
utilizado na etapa de competição da fase de ordenamento com detalhes.
Durante a fase de reconstrução, não existe adaptação dos vetores de pesos, por isto
96
5.4. GSRM - RELAXED DELAUNAY - GSRM-RD
é possível construir uma árvore sem que esta estrutura precise ser atualizada durante o
treinamento. Deste modo a busca pelos vencedores na fase de reconstrução utiliza um
algoritmo baseado em árvore-kd (kd-tree).
Os demais fatores que contribuem para aumentar o tempo de processamento do
GSRM-iDT estão relacionados com a fase de ordenamento. Para evitar visitar todos
os nodos em busca do que possui o maior contador de erro durante a etapa de atuali-
zação de nodos, foram adicionadas variáveis globais ao mapa, que indicam o valor do
maior erro (Emax), e o nodo que possui este erro (sq). Cada vez que o contador de erro
de um nodo si é ajustado quando ele ganha a competição, o novo valor Esi é comparado
com Emax, se Esi > Emax, então Emax = Esi e sq = si. Assim, o nodo com maior contador
de erro pode ser recuperado diretamente na etapa de atualização de nodos. Após a inser-
ção do novo nodo, o valor de Emax deve ser atualizado para o novo valor de Esq . Para
evitar visitar todos os nodos em cada iteração para decrementar seus contadores de erro,
foram utilizadas nuvens de pontos normalizadas, evitando os valores destes contadores
se tornem excessivamente grandes.
Para evitar remoções de nodos desnecessárias e permitir que o mapa cresça mais
rapidamente, foi adicionada uma variável local (l f ) a cada nodo, indicando se é um nodo
válido (l f = 1) ou inválido (l f = 0). Esta variável é inicializada com o valor 1 quando
o nodo é criado. Quando um nodo fica isolado após a remoção de conexões, o valor
0 é atribuído à sua variável l f . Caso posteriormente este nodo seja selecionado como
vencedor ou segundo vencedor, então ele representa uma região do espaço de entrada
em que p(ξ) 6= 0, onde p(ξ) denota a distribuição do espaço de entrada. Neste caso, o
valor 1 é atribuído à sua variável l f . Quando o processo de aprendizado é encerrado, os
nodos com l f = 0 são excluídos da malha.
A fase de ordenamento do GSRM-TTR é apresentada no Algoritmo 12. O algoritmo
de reconstrução permanece o mesmo, a única modificação diz respeito à utilização de
uma KD-Tree para encontrar os vencedores na competição entre nodos.
5.4 GSRM - Relaxed Delaunay - GSRM-rD
Tanto o GSRM quanto o GSRM-iDT produzem malhas com buracos indesejados, sendo
necessário pós-processamento para fechar estes buracos, criando novas faces que não
pertencem ao complexo de testemunhas fracas Wit(L,W ). Estes buracos indesejados
motivaram o desenvolvimento de um algoritmo baseado no Complexo Delaunay rela-
xado, que fosse capaz de gerar malhas sem buracos.
97
CAPÍTULO 5. SOLUÇÃO PROPOSTA
Algoritmo 11 Algoritmo baseado em SOC para encontrar n vencedores.Inicialização: Ordene os nodos de acordo com a soma de componentes de seus vetoresde pesos: A = {s0,s1, ...,s|A|−1} | ιs0 < ιs1 < ... < ιs|A|−1
, onde ιi = xwsi+ ywsi
+ zwsi
Busca:
1. Dado um vetor de entrada (amostra) ξ, use busca binária para encontrar o con-junto B = {sb0,sb1 , ...,sbn−1} de nodos tais que: |ιsb0
− ιsξ | < |ιsb1− ιsξ | < ... <
|ιsbn−1− ιsξ |, onde n é o número de vencedores buscados, e B é o conjunto com os
vencedores estimados até o momento.
2. Atribua os valores iniciais das seguintes variáveis: dmin = d(wsbn−1,ξ), limiar: t =
k×dmin, subscritos: iup = idown = b0, indicadores (flags): upsearch = downsearch =true. Onde d(.) denota distância quadrada, k é a dimensão dos vetores de pesos, eiup, idown,b0 denotam os subscritos dos nodos.
3. Se(upsearch == true) e iup < |A−1|, faça
• iup = iup +1
• Se(ιsiup− ιξ)
2 ≥ t, então upsearch = f alse
• Senão considere(siup)
4. Se(downsearch == true) e idown > 0, faça
• idown = idown −1
• Se(ιsidown− ιξ)
2 ≥ t, então downsearch = f alse
• Senão considere(sidown)
5. Repita os passos 3 e 4 até que upsearch == f alse e downsearch == f alse
Considere(s): Esta função atualiza o vetor B.Para (i = 0 até n−1) faça
Se d(wsbi,ξ)< dmin
Para ( j = i+1 até n−1) faça
sb j = sb j−1
sbi = s; pare
onde n é o número de vencedores procurados.
98
5.4. GSRM - RELAXED DELAUNAY - GSRM-RD
Algoritmo 12 GSRM-TTR - fase de ordenamento.
1. Competição: Use o Algoritmo 11 para encontrar os nodos s0 e s1 satisfazendo asEquações 3.1 e 3.21. Se necessário, reative estes nodos:
Se (l fsi == 0) então: l fsi = 1, ∀si ∈ {s0,s1}☛✡
✟✠5.17
O contador de erro do nodo s0 é incrementado segundo a Equação 3.3. O contadorde erro máximo e o nodo sq podem ser atualizados:
Se (Es0 > Emax) então: Emax = Es0 e sq = s0
☛✡
✟✠5.18
2. Adaptação dos Vetores de Pesos: Os vetores de pesos do nodo vencedor e de seusvizinhos topológicos são adaptados de acordo com as Equações 3.4 e 3.5.
3. Atualização de Topologia:
C =C∪ cs0s1 \CI se ∄ cs0,s1
C =C \CI se ∃ cs0,s1
l fsi = 0, ∀si ∈ NI
☛✡
✟✠5.19
Onde CI é o conjunto de arestas inconsistentes que precisam ser removidas (passo2 Algoritmo 6, e NI é o conjunto dos nodos que ficaram isolados após a remoçãode alguma aresta.
4. Atualização de Nodos:
A = A∪{sr}; wsr = (wsq +ws f )/2
Esq = α ×Esq , Es f = α ×Es f
Esr = (Esq +Es f )/2
Emax = Esq
☛✡
✟✠5.20
Onde s f é o vizinho de sq com maior contador de erro.
5. Critério de Parada: O treinamento é encerrado quando um número máximo denodos ou alguma medida de performance for atingida.
99
CAPÍTULO 5. SOLUÇÃO PROPOSTA
O complexo Del(L,W ), se construído, seria muito provavelmente 0-dimensional,
tendo em vista que W é um conjunto finito, e para um simplexo pertencer a Del(L,W )
seria necessário que todos os seus vértices estivessem a uma mesma distância do centro
Delaunay, e que esta distância fosse menor que a distância de todos os outros vértices
para este centro. Por outro lado, os verdadeiros centros Delaunay devem estar dentro
de esferas centradas nas testemunhas fracas disponíveis (w ∈W ), com um determinado
raio ρ . O complexo construído desta maneira é denominado complexo Delaunay Rela-
xado ( Delρ , ver Definição 24), e ρ é o parâmetro de relaxamento. Assim, para valores
suficientemente grandes de ρ , Delρ não possui buracos indesejados.
O parâmetro de relaxamento ρ deve ser grande o suficientemente para que cada
triângulo de Delaunay restrito tenha um centro Delaunay relaxado em W . Por outro
lado valores ρ muito grandes levam a geração de simplexos de dimensionalidade muito
alta, visto que muitos vértices conseguem atender a condição estabelecida na Definição
24 para cada testemunha ξ. O valor de ρ é escolhido calculando-se um valor inicial e
ajustando-se este valor, para mais ou para menos, conforme descrito a seguir.
Seja ε o raio de amostragem de W . Os discos de raio ε centrados nas testemunhas
cobrem a superfície, i.e, se área da superfície é A, então temos que |W |πε2 ≥ A. Similar-
mente temos que |W |πλ 2 ≥A, em que λ é o raio de amostragem de L. Na prática, tem-se
duas situações possíveis: (a) as testemunhas estão distribuídas de maneira aleatória, en-
quanto que os pontos de referência (vértices) são bem distribuídos e espaçados pelo algo-
ritmo de ordenamento utilizado para selecioná-los; (b) as testemunhas estão distribuídas
de maneira uniforme. Na primeira situação é razoável supor que: W |πε2 ≥ |L|πλ 2. Na
segunda situação tem-se o inverso: |W |πε2 ≤ |L|πλ 2. De acordo com a hipótese apre-
sentada em Boissonnat et al. (2011) para a equivalência entre Del(L,M) e Witρ(L,W ), o
parâmetro de relaxamento deve satisfizer a seguinte condição: ρ ≥ 2ε . Deste modo, em
ambas as situações (a) e (b), a estimativa inicial para o valor de ρinicio é calculada por:
ρinicio = 2ε = 2
√
|L||W | λ
☛✡
✟✠5.21
Para a primeira situação, tem-se que ε ≥√
|L||W | λ , então o valor inicial de ρ é aumen-
tado, por tentativa e erro, até que não apareçam buracos na malha gerada. Para a segunda
situação, tem-se que ε ≤√
|L||W | λ , então o valor inicial de rho é diminuído de maneira a
minimizar a quantidade de tetraedros e simplexos de maior dimensão sem que apareçam
buracos indesejados na malha. Os valores encontrados para ρ , bem como a maneira
como este deve variar conforme são variadas as quantidades |L| e |W | são discutidas no
100
5.4. GSRM - RELAXED DELAUNAY - GSRM-RD
Capítulo 6.
GSRM-iDT e GSRM-rD diferem em alguns de seus procedimentos na fase de recons-
trução. Competição entre os nodos: O GSRM-iDT seleciona três vencedores, o GSRM-
rD não tem um número fixo de vencedores; Atualização de Topologia: O GSRM-iDT
cria triângulos que possuem testemunha fraca e cujas arestas também possuem pelo me-
nos uma testemunha fraca; o GSRM-rD cria simplexos, sem uma dimensionalidade fixa,
cada um deles com pelo menos um ρ-centro Delaunay x ∈ W ; Pós-processamento: O
GSRM-iDT executa pós-processamento para preencher buracos indesejados, as malhas
geradas pelo GSRM-rD não possuem buracos indesejados, entretanto possui simplexos
de dimensionalidade arbitrária, sendo que para representação de superfícies desejamos
uma malha 2-variedade.
Para obter uma malha 2-variedade a partir da malha gerada pelo GSRM-rD podem
ser executados dois procedimentos: perturbação de vértices, extração de variedade. A
perturbação de vértices consiste em mover o vértice mais próximo do ρ-centro Delaunay
(x) de cada simplexo com dimensionalidade maior que 2 em direção a x, eliminando o
simplexo. Este estratégia de perturbação heurística dos vértices mostrou-se eficiente no
sentido de diminuir a quantidade mais simplexos de alta-dimensionalidade, e em alguns
casos foi possível obter uma malha de triângulos. Para os casos em que simplexos de
alta-dimensionalidade persistem na malha após a perturbação de vértices, são executados
colapsos combinatoriais, que consistem em remover os k-simplexos juntamente com
duas de suas (k − 1)-faces. Por fim, é possível que mais de duas faces se encontrem
em uma mesma aresta. Neste caso, algumas faces precisam ser removidas para garantir
malhas 2-variedades. Os colapsos combinatoriais juntamente com a remoção de faces
incidentes em arestas não-variedades definem a estratégia de extração de variedade.
5.4.1 Parâmetros de Treinamento e Inicialização do Mapa
Os parâmetros são os mesmos do GSRM-iDT na fase ordenamento. Na fase de recons-
trução o único parâmetro necessário é o parâmetro de relaxamento ρ . A inicialização do
mapa é a mesma que para o GSRM-iDT. Na fase de ordenamento o mapa é inicializado
com dois nodos cujos vetores de pesos são escolhidos aleatoriamente dentre os pontos
de entrada, e sem nenhuma conexão. Na fase de reconstrução os vértices do mapa inicial
são aqueles aprendidos durante a fase de ordenamento e não há conexões. O complexo
simplicial inicial pode ser descrito como: K = {{s0},{s1}, ...{sn−1}} sendo que as co-
ordenadas dos n vértices (ou seja, seus vetores de pesos) foram aprendidos na fase de
ordenamento.
101
CAPÍTULO 5. SOLUÇÃO PROPOSTA
5.4.2 Competição entre os Nodos
Na fase de ordenamento o procedimento é o mesmo empregado pelo GSRM-iDT nesta
mesma fase. Na fase de reconstrução os vencedores são encontrados de acordo com o
Algoritmo 13:
Algoritmo 13 Algoritmo de Competição entre os Nodos - GSRM-rDSeja Sw o conjunto de nodos vencedores. Inicialmente Sw =∅.Para cada amostra ξ do conjunto de pontos de entrada:
1. Ordene os nodos do mapa acordo com sua distância para ξ (d(wsi,ξ)), da menordistância para a maior.
2. Para cada elemento (si) do vetor ordenado no passo anterior, cheque se si atende àseguinte condição:
d(wsi ,ξ)≤ d(ws0,ξ)+ρ☛✡
✟✠5.22
onde s0 é o nodo mais próximo a ξ.
2.1 Se verdadeiro, então Sw = Sw ∪{si}. Volte ao passo 2 e analise o próximoelemento do vetor ordenado no passo 1.
2.2 Caso contrário, encerre a busca por vencedores..
5.4.3 Adaptação dos Vetores de Pesos
Durante a fase de ordenamento os vetores de pesos são atualizados do mesmo modo que
no GSRM-iDT nesta mesma fase. Durante a fase de reconstrução os vetores de pesos
não são atualizados.
5.4.4 Atualização de Topologia
Assim como o GSRM-iDT as conexões aprendidas na fase de ordenamento não são
utilizadas na fase de reconstrução. O complexo simplicial não possui simplexos com
dimensionalidade maior que 0 no início da fase de reconstrução.
Em cada iteração do algoritmo de aprendizado usado na fase de reconstrução é criado
um novo simplexo com todos os vértices selecionados na fase de Competição entre os
nodos, desde que este simplexo não exista, e que não seja subsimplexo de um simplexo
de maior dimensionalidade, visto que por definição, os subsimplexos τ de um simplexo
σ pertencentes a um complexo simplicial K também pertencem a K. Por exemplo, se
102
5.4. GSRM - RELAXED DELAUNAY - GSRM-RD
um triângulo que está para ser criado é uma das faces de algum tetraedro, este triângulo
não é criado.
Note que a amostra atual ξ é um ρ-centro Delaunay para o simplexo σ formado
pelos nodos selecionados na fase de competição, assim como para todos os subsimplexos
τ ⊂σ . Compare a condição especificada pela Equação 5.22 com a condição especificada
na Definição 24. Se um vértice si satisfizer a segunda, ele também satisfaz a primeira,
visto que s0 é o nodo mais próximo a ξ. Sendo assim, todos os simplexos criados
possuem um ρ-centro Delaunay em Ξ.
Diferentemente do GSRM e do GSRM-iDT, o GSRM-rD não utiliza heurísticas para
garantir malhas 2-variedades. Em vez disso, o GSRM-rD permite a criação de tetraedros
e simplexos com maior dimensionalidade durante a fase de reconstrução. Como o pro-
blema tratado nesta tese é reconstrução de superfícies, é preciso que as malhas geradas
sejam 2-variedades. Para isto alguns vértices são perturbados, reduzindo a quantidade
de simplexos com dimensionalidade maior que 2. Se necessário, uma estratégia para
extração de variedade é executada.
Note que o GSRM e o GSRM-iDT geram apenas simplexos com dimensionalidade
máxima 2, e executam pós-processamento para preencher buracos, criando novos tri-
ângulos. O GSRM-rD gera malhas sem buracos mas executa pós-processamento para
geração de uma malha 2-variedade. A vantagem de usar a segunda maneira de pós-
processamento é a garantia de todos os simplexos gerados pertencem ao complexo De-
launay relaxado. Já o pós-processamento gerado pelo GSRM e GSRM-iDT cria novos
triângulos e nada se pode dizer sobre se estes triângulos pertencem à alguma variação do
complexo Delaunay que seja equivalente à triangulação de Delaunay restrita, pelo me-
nos sob determinadas condições, e que portanto represente uma boa aproximação para a
variedade original M.
O complexo simplicial resultante após cada iteração do passo de atualização de to-
pologia na fase reconstrução, é definido como:
K(t +1) =K(t) se σ = {s0, ...,s j} ∈K
K(t +1) =K(t)∪σ = {s0, ...,s j}∪{τ|τ ⊂ σ e τ /∈K} caso contrário☛✡
✟✠5.23
onde {s0, ...,s j} é o conjunto de nodos vencedores selecionados na fase de competição
entre nodos.
103
CAPÍTULO 5. SOLUÇÃO PROPOSTA
5.4.5 Atualização de Nodos
A atualização de nodos é executada da mesma maneira que o GSRM-iDT na fase de
ordenamento. Na fase de reconstrução, não há atualização de nodos.
5.4.6 Critério de Parada
O mesmo critério de parada do GSRM-iDT é utilizado: Número máximo de nodos na
fase de ordenamento; apresentação de todas as amostras na fase de reconstrução.
5.4.7 Pós-processamento
A fase de pós-processamento do GSRM-iDT tem por objetivo gerar uma malha 2-
variedade, visto que os simplexos gerados durante a fase de reconstrução possuem di-
mensão arbitrária. Este objetivo é alcançado com duas etapas: (1) perturbação dos vérti-
ces; (2) extração de variedade.
Considere um simplexo σ , e seja s0 o vértice mais próximo do centro relaxado ξ
de σ . Se mais de três vértices estiverem a uma distância d do centro ξ, menor que
d(s0,ξ)+ ρ (Equação 5.22), então o simplexo σ possui alta-dimensionalidade, k > 2.
Se s0 for movido em direção a ξ de modo que a distância entre d(s0,ξ) diminua para
d(s0,ξ)− ρ , então a condição especificada pela Equação 5.22 não será mais satisfeita
pelos demais vértices de σ . Sendo assim, o simplexo de alta dimensionalidade σ é des-
truído. Com a perturbação dos vértices, novos simplexos serão criados. Espera-se que
os novos simplexos tenham dimensão menor que os simplexos destruídos. Embora não
seja possível garantir isto como verdade, os experimentos realizados mostram que acon-
tece, e em alguns casos é possível eliminar todos os simplexos de alta dimensionalidade
e produzir uma malha de triângulos.
Note que, se houver apenas (δ ,ρ)-centros Delaunay, isto é, todos os centros relaxa-
dos possuem uma proteção δ , garantindo que todos os vértices que não pertencem a um
determinado triângulo estejam fora da circumesfera deste triângulo, então não existirão
simplexos de alta-dimensionalidade. Se for possível perturbar consecutivamente os vér-
tices até que não se tenham simplexos com dimensionalidade maior que 2, então todos
os centros estão protegidos.
O procedimento para perturbação de vértices é realizado da seguinte maneira: To-
dos os simplexos são visitados, para cada simplexo σ com dimensionalidade maior que
2 determina-se qual de seus vértices (s0) está mais próximo de seu centro ρ-centro
(ξ), e em seguida move-se s0 na direção de ρ , de modo a distância d(s0,ξ) diminua
104
5.4. GSRM - RELAXED DELAUNAY - GSRM-RD
para d(s0,ξ) - ρ após o movimento. Depois que todos os simplexos forem percorridos
e os vértices movidos de posição (perturbados), executa-se novamente o algoritmo de
aprendizado de topologia (Subseção 5.4.4), de modo a gerar novos simplexos de acordo
com as novas coordenadas dos vértices. A cada iteração, espera-se que o número de
simplexos de alta dimensionalidade diminua, e que o número de simplexos de menor
dimensionalidade aumente. A perturbação dos vértices seguida do procedimento de
aprendizado de topologia devem ser repetidos várias vezes até que não se tenham mais
simplexos com dimensionalidade maior que 2, ou até que o número de simplexos de
alta-dimensionalidade não possa mais diminuir.
Uma limitação importante da estratégia de perturbação dos vértices descrita anteri-
ormente é a necessidade de executar o algoritmo de aprendizado de topologia repetidas
vezes, além disto nem sempre é possível gerar uma malha 2-variedade com esta estra-
tégia. Sendo assim, executa-se uma estratégia de extração de variedade que consiste de
colapsos combinatoriais para eliminar simplexos de alta-dimensionalidade e de remoção
de algumas faces garantindo que todas as arestas sejam 2-variedade. Note que durante a
extração de variedade nenhum simplexo novo é criado, simplexos são apenas removidos.
O processo de extração de variedade inicia-se com colapsos combinatoriais dos te-
traedros e simplexos com maior dimensionalidade. Cada colapso remove o simplexo
de alta-dimensionalidade juntamente com duas de suas faces, resultando em simplexos
com dimensionalidade menor. O Algoritmo 14 para remoção de simplexos de alta-
dimensionalidade deve ser executado várias vezes até que se obtenha uma malha de
triângulos. Observe, no Algoritmo 14, que se o simplexo a ser removido for um te-
traedro o ângulo entre as normais é considerado na escolha do par de triângulos a ser
removido. Quando não existirem mais simplexos de alta-dimensionalidade na malha, o
processo de extração de variedade verifica se existem mais de duas faces compartilhando
uma mesma aresta e. Se este for o caso, são removidas faces de e que possuem alguma
aresta de borda até que existam apenas duas faces incidentes em e. Por exemplo, se
existirem três faces incidentes em e e duas delas possuírem aresta de borda apenas uma
destas seria ser removida.
A Equação 5.24 descreve como fica o complexo K após a execução de colapso de
um simplexo de alta-dimensionalidade σ .
K(t +1) =K\σ \{τ1,τ2|τ1,τ2 ⊂ σ e τ1,τ2 6⊂ σi ∀ σi 6= σ}☛✡
✟✠5.24
onde σ é um k-simplexo (k > 2), e τ1,τ2 são (k−1)-simplexos.
105
CAPÍTULO 5. SOLUÇÃO PROPOSTA
Algoritmo 14 Remoção de simplexos de alta-dimensionalidade através de colapsos com-binatoriais.Para cada k-simplexo σ (k > 2) existente no complexo K:
1. Se k > 3:
• Visite cada (k− 1)-subsimplexo de σ até encontrar um subsimplexo τ1 quenão seja compartilhado com outro simplexo.
• Encontre τ2: (k − 1)-subsimplexo de σ que compartilha uma (k − 2)-facecom τ1 e também não é compartilhado com outro simplexo.
• Remova σ , τ1 e τ2, mantendo na malha as demais (k−1)-faces de σ .
• Remova o (k−2)-subsimplexo comum a τ1 e τ2.
2. Se k = 3 (tetraedro):
• Visite cada triângulo σ até encontrar algum (τ1) que não seja compartilhadopor outro tetraedro.
• Encontre τ2: outro triângulo de σ que não é compartilhado com outro tetrae-dro, e cuja normal faz o menor ângulo com a normal de τ1.
• Remova σ , τ1 e τ2, mantendo na malha os demais triângulos de σ .
• Remova a aresta comum a τ1 e τ2.
106
6Experimentos e Resultados
Este capítulo apresenta os experimentos realizados e os resultados obtidos com as
soluções propostas para a reconstrução de superfícies a partir de nuvens de pontos:
O Growing Self-reconstruction Maps (GSRM), que é a primeira solução proposta; o
GSRM-iDT, variação do GSRM que adiciona o critério local da iDT (Bobenko e Spring-
born, 2007) à heurística utilizada para geração de malhas 2-variedade; uma versão mais
rápida do GSRM-iDT, que permite a reconstrução de superfície detalhadas, como es-
truturas anatômicas humanas; o GSRM-rD, que é a solução baseada no complexo de
Delaunay relaxado.
Foram realizados experimentos com os objetos sintéticos apresentados nas Figuras
6.1 até 6.5. A face de Max-Planck (Figura 6.3) e a Mão (Figura 6.2) foram fornecidos
por Ioannis Ivrissmitzis (Ivrissimtzis et al., 2004). O Coelho (Figura 6.1), a estátua
de Buddha (Figura 6.5) e o Dragão (Figura 6.4) foram obtidos no repositório Stanford1. O número de elementos (vértices e faces) destes objetos são mostrados Tabela 6.1.
Também foram realizados experimentos com objetos sintéticos que representam estru-
turas anatômicas odontológicas humanas, que são apresentados na Seção 6.3, além de
superfícies paramétricas, apresentadas na Seção 6.1.
O processo de varredura da superfície para obtenção das nuvens de pontos dos obje-
tos foi simulado pela amostragem de pontos na superfície dos objetos sintéticos. Durante
este processo, foi gerado um conjunto denso de pontos regularmente distribuídos na su-
perfície do objeto. Também foram testadas nuvens de pontos distribuídos de maneira
uniformemente aleatória (Seção 6.4). Os valores dos parâmetros utilizados para os expe-
rimentos são apresentados na Tabela 6.2. Estes valores foram escolhidos tomando como
ponto de partida os valores apresentados por Fritzke (1996), e ajustando estes valores
por tentativa e erro, preservando as premissas discutidas na Seção 5.1.1. Os experimen-
1http://www-graphics.stanford.edu/data/3Dscanrep
107
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
Tabela 6.1 Número de elementos dos objetos sintéticos originais.Objeto NºVértices NºFacesCoelho 35947 69451
Mão 136663 273060Max-Planck 100086 199996
Dragão 437645 871414Buddha 543652 1087716
Tabela 6.2 Parâmetros de treinamento utilizados nos experimentos.λ εb εn α β age_max
200 0,05 0,0006 0,5 0,0005 30
tos foram realizados em um PC com processador Intel Dual Core (2.13Ghz, 1.60Ghz),
2Gb de memória RAM, e sistema Operacional Linux. O paralelismo da CPU não foi
explicitamente explorado pelo programa.
Os resultados visuais das reconstruções produzidas durante os experimentos realiza-
dos com os métodos propostos são apresentados através de imagens (snapshots) destas
reconstruções. Também foram utilizadas métricas numéricas para avaliar a qualidade
das malhas geradas. As métricas utilizadas são: Distância entre as superfícies alvo e a
superfícies reconstruídas, regularidade dos polígonos das malhas produzidas, e distribui-
ção de vizinhança.
A distância entre as superfícies alvos e as superfícies reconstruídas é medida pela
distância de Hausdorff, descrita no Capítulo 2. A ferramenta Metro (Cignoni et al.,
1998) foi utilizada para calcular a distância de Hausdorff bilateral entre as superfícies
alvos e as reconstruídas. Quanto menor a distância de Hausdorff, melhor a aproximação
Figura 6.1 Imagens do Coelho sob diferentes pontos de vista.
108
Figura 6.2 Imagens da Mão sob diferentes pontos de vista.
Figura 6.3 Imagens da face de Max-planck sob diferentes pontos de vista.
Figura 6.4 Imagens do Dragão sob diferentes pontos de vista.
109
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
Figura 6.5 Imagens da estátua de Buddha sob diferentes pontos de vista.
entre a reconstrução e a superfície alvo.
A regularidade dos polígonos (R(P)) é medida pela fração da menor pela maior dis-
tância entre os vértices do polígono e seu baricentro (bp) (Equação 6.1). Se o polígono
tende a ser alongado, o valor R(P) se aproxima de zero, mas se o polígono tende a ser
regular, então R(P) se aproxima de 1. No caso de triângulos, deseja-se que eles sejam
aproximadamente equiláteros.
R(P) =min||s−bp||max||s−bp||
∀s ∈ P☛✡
✟✠6.1
A distribuição de vizinhança (valence distribution) se refere ao número de vizinhos
dos vértices da malha. A vizinhança deve ser distribuída o mais uniformemente possível,
ou seja, idealmente todos os vértices deveriam ter o mesmo número de vizinhos.
A Seção 6.1 apresenta os resultados obtidos com o GSRM e compara com outros
métodos de reconstrução de acordo com as métricas consideradas. A Seção 6.2 apresenta
os resultados obtidos com o GSRM-iDT. A Seção 6.3 apresenta os resultados obtidos
com o GSRM-TTR (versão do GSRM-iDT com tempo de treinamento reduzido) na
reconstrução de estruturas anatômicas humanas. Os resultados obtidos com o GSRM-
rD são apresentados na Seção 6.4, e são comparados com o GSRM-iDT e outros três
métodos de reconstrução de superfícies. A Seção 6.4 também explora aspectos como
nuvens de pontos ruidosos, aleatoriamente distribuídos, dados reais e reconstrução de
variedades imersas em espaços de maior dimensão.
110
6.1. GSRM
Tabela 6.3 Número de pontos amostrados nas superfícies alvo.Objeto NºAmostrasCoelho 2923043
Mão 3106193Max-Planck 3776005
Buddha 7688098Dragão 8084705Esfera 1000000Torus 1000000
Helicoide 1000000
6.1 GSRM
Os experimentos realizados como o GSRM foram divididos em dois grupos. No pri-
meiro grupo foram reconstruídos os objetos sintéticos das Figuras 6.1 até 6.5, enquanto
que no segundo grupo superfícies paramétricas foram trianguladas, mostrando que o mé-
todo proposto também pode ser usado com este propósito. O número de pontos amostra-
dos para cada objeto utilizado nos experimentos é mostrado na Tabela 6.3. Alguns dos
objetos sintéticos reconstruídos foram utilizados para comparar os resultados do GSRM
com o resultados de outros métodos de reconstrução de superfícies baseados em redes
neurais (Brito et al., 2008; Ivrissimtzis et al., 2004; Saleem, 2003).
As superfícies paramétricas utilizadas nos experimentos são: uma esfera, um torus
e um helicoide, respectivamente definidos pelas Equações 6.2, 6.3 e 6.4. As nuvens de
pontos foram geradas escolhendo valores aleatórios para os parâmetros u e v e aplicando
estes valores nas equações que definem as superfícies para obter as coordenadas x,y,z
dos pontos da superfície.
u = u∗2∗π;v = v∗2∗π;
x = sin(u)∗ sin(v);y = cos(u)∗ sin(v);z = cos(v);
☛✡
✟✠6.2
u = u∗2∗π;v = v∗2∗π;
x = (5−2∗ cos(v))∗ cos(u);y = (5−2∗ cos(v))∗ sin(u);z = 2∗ sin(v);
☛✡
✟✠6.3
u = u;v = v∗2∗π;
x = u∗ cos(v);y = u∗ sin(v);z = 0.5∗ v;
☛✡
✟✠6.4
A Figura 6.6 mostra a malha do gerada pelo GSRM para representar o coelho em
111
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
(a) (b) (c)
Figura 6.6 Etapas de reconstrução do GSRM: (a) Antes da etapa final de aprendizado de topo-logia, (b) após a etapa final de aprendizado de topologia, (c) após a etapa de pós processamento.
diferentes momentos: (a) Logo após o treinamento e antes da etapa de aprendizado
de topologia; (b) após a etapa de aprendizado de topologia e antes da etapa de pós-
processamento; (c) após a etapa de pós-processamento. Os números de vértices e de
faces das malhas ilustradas na Figura 6.6 são: (a) 5000 vértices e 4161 faces; (b) 5000
vértices e 9204 faces; (c) 5006 vértices e 9909 faces.
Antes da etapa de pós-processamento (Figura 6.6(b)) alguns polígonos que o algo-
ritmo de aprendizado de topologia não consegue triangular permanecem na malha, con-
forme explicado na Seção 5.1.8. A Figura 6.7(a) ilustra com maior clareza alguns dos
polígonos não triangulados da malha apresentada na Figura 6.6(b). Note que os po-
lígonos não triangulados aparecem como buracos indesejáveis na malha reconstruída.
Quando o polígono é um quadrilátero, este problema é resolvido pela inserção de uma
das diagonais deste quadrilátero como uma nova aresta da malha, criando dois novos
triângulos em lugar do quadrilátero. A diagonal é escolhida de modo a favorecer a cria-
ção de arestas que sejam localmente Delaunay, pelo critério da iDT de superfícies pwf.
Quando o polígono possui mais que quatro lados, a solução consiste em inserir um vér-
tice no meio do quadrilátero e conectá-lo a todos os vértices do polígono, criando assim
n novas faces, em que n é o número de vértices do polígono que está sendo triangulado.
A Figura 6.7(b) mostra como ficam os polígonos da Figura 6.7(a) após a triangulação
realizada pela etapa de pós-processamento.
A Figura 6.8 mostra a reconstrução do coelho com aproximadamente 20.000 vértices
a partir de diferentes pontos de vista. Com esta figura é possível observar a capacidade
do GSRM para aprender tanto a geometria quanto a topologia de uma superfície a partir
de uma nuvem de pontos. A distribuição dos vértices na malha segue a distribuição
dos pontos de entrada, e a conectividade entre estes vértices é aprendida de modo que
112
6.1. GSRM
(a) Antes da triangulação (b) Depois da triangulação
Figura 6.7 Polígonos antes e depois da triangulação durante o pós-processamento.
não existam arestas conectando vértices que representam regiões desconexas do espaço
de entrada. Além disto, é possível observar pela Figura 6.8 que o modelo reconstruído
consegue representar regiões côncavas e bordas na superfície do coelho.
A Figura 6.9 compara as malhas que representam o objeto sintético mão, geradas
por diferentes Mapas Auto-organizáveis com estrutura variante no tempo (GCS e GNG)
que foram usados como pontos de partida para o desenvolvimento do modelo proposto,
e pelo modelo proposto (GSRM), mostrando que o GSRM é mais adequado para o pro-
blema de reconstrução de superfícies. Por esta figura, é possível perceber que o GCS
não consegue aprender corretamente a conectividade entre os vértices, por exemplo, as
arestas que representam falsas ligações entre os dedos não deveriam existir. A malha
gerada pelo GNG não apresenta arestas conectando vértices que representam regiões
desconexas do espaço de entrada, entretanto, o GNG produz apenas um conjunto de vér-
tices e arestas, conhecido como aramado (wireframe), mas não é capaz de produzir uma
malha de polígonos para representar a superfície alvo.
As modificações introduzidas pelo GSRM fazem com que ele seja capaz de aprender
a topologia da superfície alvo, produzindo malhas de triângulos que são variedades de
dimensão 2 para representar estas superfícies. A representação da mão com 20.000
vértices produzida com o GSRM é apresentada na Figura 6.10 a partir de diferentes
pontos de vista permitindo sua visualização detalhada.
A habilidade do GSRM para produzir malhas com diferentes resoluções para repre-
sentar a superfície alvo com diferentes níveis de detalhes é ilustrada na Figura 6.11, onde
é possível visualizar a representação do coelho em diferentes instantes do processo de
aprendizado, quando a rede tinha respectivamente 100, 500 e 1000 nodos (vértices). A
Figura 6.11 mostra as arestas das malhas para que seja possível visualizar o tamanho das
faces.
As reconstruções da face de Max Planck, do dragão e da estátua de Buddha são
113
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
(a) (b)
(c) (d)
Figura 6.8 Reconstrução do Coelho produzida pelo GSRM com aproximadamente 20000 vérti-ces, a partir de diferentes pontos de vista.
(a) (b) (c)
Figura 6.9 Representações do objeto sintético Mão produzidas com: (a) GCS; (b) GNG; (c)GSRM.
114
6.1. GSRM
(a) (b) (c)
Figura 6.10 Reconstruções da Mão produzidas pelo GSRM com aproximadamente 20000 vér-tices a partir de diferentes pontos de vista.
(a) (b) (c)
Figura 6.11 Malhas com diferentes resoluções produzidas pelo GSRM.
115
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
(a) (b) (c)
Figura 6.12 Reconstrução da face de Max-Planck com cerca de 20000 vértices.
(a) (b)
Figura 6.13 Reconstrução do Dragão com cerca de 20000 vértices.
apresentadas nas Figuras 6.12, 6.13 e 6.14 respectivamente. Todas as reconstruções pos-
suem em torno de 20000 vértices. É importante ressaltar que as malhas produzidas pelo
GSRM conseguem reproduzir detalhes dos objetos originais, como os que se observa
na visão lateral da estátua de Buddha (Figura 6.14(d)), e na cabeça do dragão (Figura
6.13(b)).
No segundo grupo de experimentos, foram geradas malhas de triângulos a partir de
superfícies paramétricas. Nestes experimentos, a amostragem de pontos na superfície
alvo foi feita pela escolha aleatória de valores para os parâmetros das superfícies. As
coordenadas das amostras foram obtidas pela aplicação dos valores escolhidos para os
parâmetros. A Figura 6.15 ilustra as malhas de triângulos produzidas pelo GSRM para
116
6.1. GSRM
(a) (b) (c) (d)
Figura 6.14 Reconstrução da estátua de Buddha com cerca de 20000 vértices.
(a) (b) (c)
Figura 6.15 Malhas de triângulos produzidas pelo GSRM para três superfícies paramétricas: (a)Esfera, (b) torus, (c) helicoide.
três superfícies paramétricas. Todas as malhas possuem cerca de 5000 vértices.
Saleem (2003) apresenta as distâncias de Hausdorff calculadas com a ferramenta
Metro entre os malhas originais da mão, do coelho e da face de Max-Planck, e as respec-
tivas reconstruções produzidas com duas versões do Neural Mesh, ambas apresentadas
por Saleem (2003). Os resultados apresentados por Saleem (2003) são mostrados na
Tabela 6.4 para fins de comparação com os resultados obtidos pelo GSRM. Todas as
reconstruções do Neural Mesh e do GSRM possuem cerca de 20000 vértices.
Os resultados apresentados na Tabela 6.4 mostram que as malhas reconstruídas com
o GSRM aproximam a superfície original melhor que as malhas reconstruídas com o
Neural Mesh nos três casos comparados. As malhas reconstruídas com as versões do
Neural Mesh apresentadas por Saleem (2003) não conseguem reproduzir as bordas dos
117
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
objetos, como os buracos que aparecem na parte inferior dos três objetos considerados,
contribuindo para aumentar a distância de Hausdorff entre a superfície original e as
reconstruções. Como o GSRM consegue reproduzir estas bordas, suas reconstruções
estão mais próximas (menor distância de Hausdorff) dos modelos originais.
A tabela 6.5 compara as reconstruções produzidas pelo GSRM com as reconstru-
ções produzidas pelo método baseado em SOM proposto por Brito et al. (2008), e pelo
Power Crust (Amenta et al., 2001), que é um método geométrico tradicional, em termos
da regularidade dos triângulos das malhas geradas. O modelo do coelho foi utilizado
para comparação pela disponibilidade dos resultados que foram retirados de Brito et al.
(2008). Pelos resultados apresentados concluímos que as malhas gerados pelo GSRM
apresentam melhor regularidade de polígonos mesmo com menor número de elementos
(vértices e faces).
A Tabela 6.6 mostra a distribuição de vizinhança das malhas produzidas pelo Neural
Mesh para representar uma esfera e o coelho. As malhas produzidas possuem 1.000 e
5.000 vértices e os valores da Tabela 6.6 foram retirados de Ivrissimtzis et al. (2003).
Estes valores são usados para comparar o GSRM com o Neural Mesh em termos da
distribuição de vizinhança das malhas produzidas. Os resultados referentes ao GSRM
são apresentados na Tabela 6.7. Nota-se que ambos os métodos alcançaram uma boa
distribuição de vizinhança. A percentagem média dos vértices que possuem entre cinco
e sete vizinhos é aproximadamente 89,75% para as malhas produzidas pelo GSRM, e
95,23% para o Neural Mesh. Logo, as reconstruções produzidas pelo Neural Mesh são
melhores que as produzidas pelo GSRM em termos da distribuição de vizinhança.
Tabela 6.4 Distâncias de Hausdorff entre as malhas originais e as malhas reconstruídas com: (a)duas versões do Neural Mesh (Saleem, 2003), e (b) GSRM.
Max-Planck Mão CoelhoNeural Mesh I 5,23 6,60 0,006Neural Mesh II 3,86 8,30 0,007
GSRM 0,002691 0,001311 0,001541
6.2 GSRM-iDT
Esta Seção apresenta as reconstruções produzidas com o GSRM-iDT e compara este
método com o GSRM, mostrando que, com relação às métricas consideradas, os dois
métodos produzem resultados similares, com a vantagem de que, nos experimentos reali-
zados, as arestas das malhas produzidas com o GSRM-iDT satisfazem ao critério local
118
6.2. GSRM-IDT
Tabela 6.5 Regularidade dos polígonos das malhas produzidas com diferentes métodos.
Método No. de vértices No. de faces R(P)
Power Crust 277242 191981 0,519424SOM 31004 62004 0,5676
GSRM 20116 40022 0,688785GSRM 5006 9909 0,69024
GSRM 1010 1982 0,690112
Tabela 6.6 Distribuição de vizinhança nas malhas produzidas com Neural Meshes.Distribuição de vizinhança(%)
4 5 6 7 8 outrosEsfera 1k 0,20 29,60 47,00 18,40 4,40 0,50Coelho 1k 0,70 27,40 49,00 18,60 4,20 0,20Esfera 5k 0,20 29,02 46,60 19,98 3,54 0,68Coelho 5k 0,44 28,32 47,28 19,74 3,54 0,70
da iDT (intrinsic Delaunay Triangulation) de superfícies planas por partes (Bobenko e
Springborn, 2007).
A Figura 6.16 mostra as reconstruções produzidas pelo GSRM-iDT. Assim, como o
GSRM, o GSRM-iDT é capaz de aprender a geometria e a topologia da superfície re-
presentando adequadamente sua forma. A Tabela 6.8 compara a distância de Hausdorff
entre as malhas originais e as reconstruídas com o GSRM e o GSRM-iDT. As malhas
possuem cerca de 20000 vértices. Os resultados apontam que as reconstruções produzi-
das com o GSRM e com o GSRM-iDT aproximam a malha original de maneira similar.
As reconstruções da mão e da face de Max-Planck produzidas pelo GSRM-iDT estão um
pouco mais próximas das respectivas malhas originais que as reconstruções produzidas
pelo GSRM. Para o coelho, a malha produzida pelo GSRM está um pouco mais próxima
da original.
A Tabela 6.9 compara a regularidade dos triângulos das malhas produzidas pelo
GSRM e pelo GSRM-iDT. Nota-se que os resultados são similares. A Tabela 6.10 com-
para a distribuição de vizinhança nas malhas produzidas com o GSRM e o GSRM-iDT.
As malhas consideradas têm cerca de 20.000 vértices. Pelos resultados apresentados
nesta tabela, nota-se que os dois métodos produzem malhas com distribuição de vizi-
nhança similares.
Os resultados apresentados até aqui mostram que o GSRM e o GSRM-iDT produ-
zem malhas com qualidades similares de acordo com as métricas consideradas. Isto é
esperado uma vez que o algoritmo de aprendizado de ambos são similares. O princi-
119
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
(a) Coelho
(b) Mão
(c) Max-Planck
Figura 6.16 Reconstruções produzidas pelo GSRM-iDT (∼20000 vértices).
120
6.2. GSRM-IDT
Tabela 6.7 Distribuição de vizinhança nas malhas produzidas com GSRM.Distribuição de vizinhança(%)
4 5 6 7 8 outros
Esfera 1k 4,19 25,25 43,01 22,75 4,39 0,40
Coelho 1k 6,14 25,25 40,00 21,88 4,45 2,28
Esfera 5k 3,74 26,39 41,76 23,14 4,40 0,56
Coelho 5k 4,91 26,15 41,26 22,17 4,41 1,10
Tabela 6.8 Distâncias de Hausdorff entre as malhas originais e as produzidas pelo GSRM e peloGSRM-iDT.
Max-Planck Mão CoelhoGSRM 0,002691 0,001311 0,001541
GSRM-iDT 0,002551 0,001281 0,001590
pal avanço do GSRM-iDT com relação nao GSRM é a habilidade de produzir malhas
cujas arestas são localmente Delaunay de acordo com o critério apresentado por Bo-
benko e Springborn (2007). Não obstante, os experimentos realizados mostram que a
maioria das arestas produzidas com o GSRM satisfazem este critério. A Tabela 6.11
mostra o número total de arestas, o número de arestas não localmente Delaunay (nlD)
e a percentagem destas arestas. Esta tabela considera as malhas antes do passo de pós-
processamento.
As triangulações de Delaunay tendem a maximizar os ângulos mínimos dos triângu-
los. Deste modo, espera-se que os ângulos mínimos dos triângulos do GSRM-iDT sejam
menores que os relativos ao GSRM. Entretanto, a diferença apresentada é pequena tendo
em vista que mesmo para as malhas produzidas com o GSRM, a grande maioria das ares-
tas são localmente Delaunay. Foram calculados os ângulos mínimos (αmin) de todos os
triângulos das malhas produzidas como o GSRM e com o GSRM-iDT. A Tabela 6.12
mostra os valores médios e mínimos de αmin. Os valores foram encontrados conside-
rando as malhas produzidas antes da etapa de pós-processamento.
121
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
Tabela 6.9 Regularidade dos triângulos das malhas geradas pelo GSRM e pelo GSRM-iDT.Conformidade dos triângulos das malhas produzias pelo GSRMObjeto No. vértices No. faces R(P)Coelho 20116 40022 0,688785Coelho 1010 1982 0,690112
Mão 20136 40106 0,690625Max-Planck 20101 40090 0,687202Conformidade dos triângulos das malhas produzias pelo GSRM-iDT
Objeto No. vértices No. faces R(P)Coelho 20133 40034 0,6892Coelho 1021 1978 0,6881
Mão 20107 40090 0,690218Max-Planck 20113 40132 0,686553
Tabela 6.10 Distribuição de vizinhança das malhas produzidas com GSRM e GSRM-iDT.Distribuição de Vizinhança para GSRM
4 5 6 7 8 outrosCoelho 4,32 25,76 42,49 21,87 4,76 0,80
Mão 4,27 25,70 42,45 22,03 4,88 0,66Max-Planck 4,27 26,12 41,76 21,97 5,14 0,73
Distribuição de Vizinhança para GSRM-iDT4 5 6 7 8 outros
Coelho 4,10 26,18 42,26 21,85 4,71 0,89Mão 4,20 26,21 41,67 22,35 4,81 0,75
Max-Planck 4,21 26,17 41,66 22,19 4,92 0,84
Tabela 6.11 Quantidade de arestas das malhas geradas com GSRM que são não-localmenteDelaunay (nlD) de acordo com o critério apresentado por Bobenko e Springborn (2007) parasuperfícies planas por partes.
Modelo No. arestas No. arestas nlD % arestas nlDCoelho 1k 2923 4 0,0014Coelho 20k 56358 16 0,0003
Mão 1k 2944 6 0,0020Mão 20k 56389 20 0,0003
Max-Planck 1k 2953 2 0,0007Max-Planck 20k 56887 19 0,0003
122
6.3. RECONSTRUÇÃO DE ESTRUTURAS ANATÔMICAS COM GSRM-IDT
Tabela 6.12 Ângulos mínimos das malhas e valores médios dos ângulos mínimos dos triângulosdas malhas. Valores dos ângulos em radianos.
GSRM GSRM-iDTαmin αmin
mínimo média mínimo médiaCoelho 1k 0,2197 0,7317 0,2691 0,7329Coelho 20k 0,1398 0,7366 0,1436 0,7362
Mão 1k 0,2757 0,7320 0,2776 0,7270Mão 20k 0,1416 0,7361 0,1437 0,7375
Max-Planck 1k 0,2608 0,7346 0,2790 0,7286Max-Planck 20k 0,1380 0,7307 0,1456 0,7319
6.3 Reconstrução de Estruturas Anatômicas com
GSRM-iDT
Os métodos GSRM e GSRM-iDT podem ser utilizados para reconstruir superfícies a
partir de uma nuvem de pontos, sem restrição do domínio de aplicação das superfícies.
Isto é possível porque, a única informação necessária para a reconstrução são as coor-
denadas dos pontos amostrados. Quanto mais detalhada for a superfície alvo, maior a
quantidade de vértices na malha para representá-lo. Attali et al. (2007) estabelecem as
condições de amostragem do conjunto de vértices L, que leva em consideração a curva-
tura da superfície, para que a equivalência entre Del(L,M) e Wit(L,M) seja verdadeira,
de modo que Wit(L,M) represente uma boa aproximação de M. Quanto maior a quan-
tidade de vértices e triângulos na malha, maior deve ser quantidade de testemunhas em
W , para que cada simplexo que possua alguma testemunha em M também possua uma
testemunha em W . Boissonnat et al. (2011) estabelece as condições de amostragem do
conjunto de testemunhas W e de vértices L para garantir a equivalência entre Del(L,M)
e Witρ(L,W ). Note que, apesar de o GSRM-iDT não estar baseado no complexo de
testemunhas relaxado, este resultado é útil visto que, para ρ = 0, tem-se o complexo de
testemunhas (não relaxado).
Por outro lado, o tempo de treinamento do GSRM e GSRM-iDT aumenta conforme
aumenta a quantidade de elementos em L e em W . Sendo assim, foi desenvolvida uma
versão do GSRM-iDT com tempo de treinamento reduzido, chamada nesta tese GSRM-
TTR, facilitando a reconstrução de objetos mais complexos, como são as estruturas odon-
tológicas humanas testadas nesta Seção. A única mudança do GSRM-TTR em relação
ao GSRM-iDT diz respeito à maior velocidade do processo de aprendizado.
123
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
Tabela 6.13 Número de elementos das malhas originais e número de pontos amostrados.Objeto NºVértices NºFaces NºAmostrasCrânio 60114 120796 5148854Face1 551323 1106572 5232957Face2 219730 440566 7179155Face3 633237 1272556 8197883
Mandíbula1 59995 120009 5232957Mandíbula2 39837 79702 3950158Mandíbula3 62534 125211 4450666Mandíbula4 70815 141686 4247396
Inicialmente serão apresentados os tempos gastos pelo GSRM-iDT e pelo GSRM-
TTR para executar as fases de ordenamento e de reconstrução. A qualidade das malhas
geradas pelo GSRM-TTR será comparada com a qualidade das malhas geradas com o
GSRM-iDT através das medidas numéricas, mostrando que ambos possuem qualidade
similar, conforme esperado. Em seguida são mostradas imagens das reconstruções pro-
duzidas pelo GSRM-TTR para as estruturas anatômicas utilizadas nos experimentos. As
mesmas estruturas foram reconstruídas com o Power Crust (Amenta et al., 2001), e as
medidas das malhas produzidas pelos dois métodos foram comparadas.
As malhas que representam as estruturas anatômicas foram gentilmente doadas pela
empresa Bioparts2, que trabalha com representações anatômicas. As imagens destas
estruturas são apresentadas na Figura 6.17. O número de elementos (vértices e faces)
das malhas originais é mostrado na Tabela 6.13. As superfícies foram uniformemente
amostradas para formação de nuvens de pontos densas, assim como nos experimentos
anteriores. O número de pontos amostrados em cada superfície é mostrado na Tabela
6.13 (coluna NºAmostras).
As Tabelas 6.14 a 6.16 comparam as métricas numéricas das malhas produzidas
pelo GSRM-iDT e GSRM-TTR. Os valores apresentados nestas tabelas, mostram que a
qualidade das malhas produzidas são similares. Entretanto a vantagem do GSRM-TTR
está em seu menor tempo de treinamento, conforme mostra a Tabela 6.17.
Os números apresentados na Tabela 6.17 mostram que as modificações feitas no
GSRM-iDT tornaram a fase de ordenamento e a de reconstrução significativamente mais
rápidas. Estes números se referem ao tempo para produzir malhas com 10000 vértices,
exceto a primeira linha da tabela, que se refere à reconstrução do coelho com 1000 vérti-
ces, para ressaltar que quanto maior a quantidade de vértices na malha, maior a redução
2www.bioparts.com.br
124
6.3. RECONSTRUÇÃO DE ESTRUTURAS ANATÔMICAS COM GSRM-IDT
(a) Crânio (b) Face1 (c) Face2
(d) Face3 (e) Mandíbula1 (f) Mandíbula2
(g) Mandíbula3 (h) Mandíbula4
Figura 6.17 Imagens das estruturas anatômicas originais .
125
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
do tempo de execução. Na fase de reconstrução, quanto maior o número de amostras de
entrada (ver Tabela 6.13), maior é a redução do tempo de execução, comparativamante à
versão anterior. Note que o tempo de ordenamento não depende da quantidade de pontos
de entrada, uma vez que nesta fase os pontos não são processados diretamente.
A versão modificada do GSRM-iDT utiliza nuvens de pontos normalizadas como
entrada. Além disto a máquina utilizada nos experimentos desta Seção possui maior
espaço em memória (aumento de 2Gb para 4Gb em relação aos experimentos anteriores).
Assim para uma melhor comparação entre as malhas produzidas pelos métodos e entre
seus tempos de execução, os experimentos com o GSRM-iDT foram refeitos.
Tabela 6.14 Regularidade de Polígonos: GSRM-TTR versus GSRM-iDT.
Objeto Método Nºvértices Nºfaces R(P)
CoelhoGSRM-TTR 10090 20169 0,67GSRM-iDT 10031 19971 0,69
MãoGSRM-TTR 10130 20367 0,67GSRM-iDT 10021 19888 0,69
Max-PlanckGSRM-TTR 10156 20465 0,67GSRM-iDT 10052 20032 0,68
Tabela 6.15 Distribuição de vizinhança (%): GSRM-TTR versus GSRM iDT.GSRM-TTR
Objeto 4 5 6 7 8 outrosCoelho 4,18 26,73 41,83 22,67 4,81 0,78
Mão 4,03 25,97 40,81 22,84 5,53 0,82Max-Planck 4,28 25,88 40,27 23,14 5,30 1,13
GSRM-iDTObjeto 4 5 6 7 8 outrosCoelho 4,52 26,01 41,24 22,71 4,71 0,81
Mão 4,86 25,96 41,06 22,64 4,48 0,99Max-Planck 4,33 26,27 41,37 22,08 5,18 0,76
Tabela 6.16 Distâncias de Hausdorff: GSRM-TTR versus GSRM-iDT.GSRM-TTR GSRM-iDT
Coelho 0,019 0,018Mão 0,015 0,015
Max-Planck 0,021 0,020
A Figura 6.18 mostra as reconstruções produzidas com o GSRM-TTR. Todas as re-
construções apresentadas possuem cerca de 30000 vértices mostrando que o GSRM-iDT
126
6.3. RECONSTRUÇÃO DE ESTRUTURAS ANATÔMICAS COM GSRM-IDT
Tabela 6.17 Tempos de Ordenamento e Reconstrução (em segundos).GSRM-TTR GSRM-iDT
Objeto Tempo Ord. Tempo Rec. Objeto Tempo Ord. Tempo Rec.Coelho 1K 2 43 Coelho 1k 11 358
Coelho 145 67 Coelho 2788 11061Face3 158 122 Face3 2936 22002
Mandíbula2 204 70 Mandíbula2 2746 9871
consegue gerar malhas para reproduzir as superfícies alvos com um número bem menor
de vértices que as superfícies sintéticas originais. Obviamente, malhas com maior nú-
mero de vértices conseguem representar a superfície alvo com mais detalhes, entretanto,
malhas densas podem ser difíceis para manipular usando computadores pessoais (PCs).
Assim, o melhor para o usuário é poder escolher a resolução desejada para sua aplica-
ção. O GSRM-iDT e GSRM-TTR proporcionam esta facilidade pois geram malhas com
diferentes resoluções durante o processo de aprendizado.
Por fim, são comparadas as malhas geradas pelo GSRM-TTR com as do Power Crust.
Para realizar as reconstruções com o Power Crust, foi utilizada a implementação de
Amenta et al. (2001) que está disponível on-line3. Diferentemente de seu predeces-
sor (Crust (Amenta et al., 1998b)), O Power Crust evita buracos e outros artefatos na
vizinhança de áreas não suficientemente amostradas (under sampled). Entretanto ele in-
troduz pontos extras na malha (Dey e Goswami, 2003). Para os modelos maiores (Face1
e Face3), estes pontos extras resultaram em estouro de memória. Por este motivo, as
métricas para estes modelos não são apresentadas nas Tabelas 6.18 a 6.20. Os polígo-
nos das malhas geradas pelo Power Crust foram triangulados com a ferramenta Meshlab
(Cignoni et al., 2008).
Pelos valores apresentados nas Tabelas 6.18 a 6.20 é possível concluir que: (a) os
triângulos das malhas produzidas com o GSRM-TTR são mais regulares do que os que
são produzidos pelo Power Crust; (b) o GSRM-TTR pode distribuir o número de vizi-
nhos por nodo mais uniformemente. (c) as malhas reconstruídas com o GSRM-TTR são
mais próximas das malhas originais do que as que são reconstruídas com o Power Crust,
apesar de possuírem menos elementos.
3http://www.cs.ucdavis.edu/~amenta/powercrust.html
127
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
(a) Crânio (b) Face1 (c) Face2
(d) Face3 (e) Mandíbula1 (f) Mandíbula2
(g) Mandíbula3 (h) Mandíbula4
Figura 6.18 Estruturas Anatômicas Reconstruídas com o GSRM-TTR.
128
6.3. RECONSTRUÇÃO DE ESTRUTURAS ANATÔMICAS COM GSRM-IDT
Tabela 6.18 Regularidade de Polígonos: GSRM-TTR versus Power Crust
Objeto Método Vértices Faces R(P)
CrânioGSRM-TTR 31398 65396 0,66Power Crust 622370 1245468 0,47
Face2GSRM-TTR 32024 68278 0,65Power Crust 2233558 4475224 0,46
Mandíbula1GSRM-TTR 31038 63660 0,67Power Crust 1529717 3058303 0,47
Mandíbula2GSRM-TTR 31244 64265 0,67Power Crust 432633 865414 0,47
Mandíbula3GSRM-TTR 30617 62108 0,71Power Crust 645330 1290788 0,47
Mandíbula4GSRM-TTR 31198 64203 0,67Power Crust 749099 1498294 0,47
Tabela 6.19 Distribuição de vizinhança (%): GSRM-TTR versus Power CrustGSRM-TTR
Objeto 4 5 6 7 8 outrosCrânio 4,65 24,92 36,34 23,04 7,15 3,89Face2 6,47 23,41 33,76 21,09 7,33 7,94
Mandíbula1 4,03 25,94 38,41 23,34 6,55 1,71Mandíbula2 3,66 25,99 38,36 23,33 6,95 1,71Mandíbula3 2,57 24,59 43,76 23,40 4,63 1,04Mandíbula4 3,72 25,80 38,44 23,53 6,65 1,85
Power CrustObjeto 4 5 6 7 8 outrosCrânio 16,89 25,95 20,93 13,18 7,85 15,18Face2 16,96 25,96 20,80 13,12 7,84 15,31
Mandíbula1 16,74 25,85 21,19 13,43 7,91 14,87Mandíbula2 16,67 25,69 21,26 13,64 7,90 14,83Mandíbula3 16,72 25,77 21,22 13,50 8,00 14,77Mandíbula4 16,75 25,63 21,23 13,52 8,05 14,81
Tabela 6.20 Distâncias de Hausdorff: GSRM-TTR versus Power CrustGSRM-TTR Power Crust
Modelo Distância Modelo DistânciaCrânio 0,020 Crânio 0,034Face2 0,026 Face2 0,055
Mandíbula1 0,012 Mandíbula1 0,020Mandíbula2 0,010 Mandíbula2 0,031Mandíbula3 0,012 Mandíbula3 0,015Mandíbula4 0,008 Mandíbula4 0,035
129
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
6.4 GSRM-rD
Esta seção apresenta os experimentos realizados com a última solução proposta. Estes
experimentos têm por objetivo: (a) analisar o valor do parâmetro de relaxamento ρ , e
como este varia de acordo com o número de testemunhas (amostras) |W | e com o número
de pontos de referência (vértices) |L|; (b) demonstrar que a estratégia de perturbação dos
vértices utilizada é adequada para reduzir a quantidade de simplexos de alta dimensio-
nalidade; (c) mostrar as malhas geradas após a extração de variedades; (d) comparar os
resultados com o GSRM-iDT e outros três métodos de reconstrução não baseados em
aprendizagem; (e) ilustrar a viabilidade dos métodos propostos (GSRM-iDT e GSRM-
rD) para: lidar com dados ruidosos, lidar com dados reais, e reconstruir 2-variedades
imersas em espaços com dimensão maior que 3.
Durante a fase de ordenamento foram utilizados o algoritmo de treinamento do GNG,
e o algoritmo usado na fase de ordenamento do GSRM-iDT. A diferença entre eles é que
o GSRM-iDT substitui o critério da idade, utilizado pelo GNG para remoção de arestas,
pelo critério baseado na esfera de Thales (Seção 5.2). O algoritmo de ordenamento do
GSRM-iDT produz malhas com triângulos mais regulares, enquanto que as distâncias
para a superfície original são similares nos dois casos. A Figura 6.19 ilustra as malhas
produzidas pelo GSRM-rD com vértices gerados pelos dois algoritmos para a superfície
da mão. É possível visualizar que o GSRM-iDT distribui os vértices de maneira mais
uniforme, resultando em triângulos mais regulares. Neste exemplo a distância de Haus-
dorff para a superfície original foi de 0.002270 (malha com vértices do GSRM-iDT), e
de 0.002623 (malha com vértices do GNG). Tendo em vista estes resultados, utilizamos
o mesmo algoritmo que o GSRM-iDT para distribuição dos vértices. Em ambos os casos
movemos os vértices aprendidos foram movidos para a superfície da seguinte maneira:
para cada amostra ξ, encontra-se o vetor de pesos wsi mais próximo e movimenta-se wsi
para a posição de ξ. Como será mostrado posteriormente, esta estratégia só é adequada
quando a nuvem de pontos não possui ruído.
Os valores do parâmetro de relaxamento (ρ) podem ser maiores ou menores que o
valor inicial (calculado a partir dos valores |L|, |W | e do raio de amostragem λ de L com
respeito a W ), dependendo do método de amostragem, como discutido a seguir. Se as
amostras são escolhidas de modo aleatório (Tabela 6.21), e os vértices são distribuídos
de maneira mais uniforme que as amostras pelo algoritmo de ordenamento, é razoável
supor que |W |πε2 ≥ |L|πλ 2, logo ρ ≥ 2ε ≥ 2√
LM λ . Por outro lado, se as amostras
são distribuídas de maneira uniforme (Tabela 6.22), tem-se que: |W |πε2 ≤ |L|πλ 2, e
130
6.4. GSRM-RD
(a) Vértices selecionados com GNG (b) Vértices selecionados com GSRM-iDT
Figura 6.19 Reconstruções da Mão produzidas pelo GSRM-rD usando vértices gerados peloGNG e pelo GSRM-iDT.
ρ ≤ 2√
LM λ . Sendo assim, o valor inicial de ρ é calculado por: ρ = 2
√
LM λ . Para nu-
vens de pontos aleatórios, este valor é incrementado até que se tenha uma malha sem
buracos indesejados. Para nuvens de pontos uniformes, este valor é decrementado até
o menor valor possível que não produza buracos indesejados na malha. A ideia é sem-
pre encontrar um valor para ρ que produza a menor quantidade possível de tetraedros e
outros simplexos de dimensão maior, sem produzir buracos indesejados na malha. As
Tabelas 6.21 e 6.22 mostram os valores: |W | (número de amostras); L (número de vérti-
ces); λ (raio de amostragem de L com respeito a W ); ρinicio (valor inicial do parâmetro
de relaxamento); ρ (valor encontrado por tentativa e erro a partir do valor inicial). As
amostras aleatórias foram no Meshlab (Cignoni et al., 2008), usando a estratégia Monte
Carlo.
Tabela 6.21 Valores dos parâmetros de relaxamento (amostras distribuídas aleatoriamente).Modelo |W | |L| λ ρinicio ρ
Coelho 3001568 5000 0,00320972 0,0002620 0,000404529Mão 2998507 4989 0,00324459 0,0002647 0,000344102
Max-Planck 3001203 5000 0,00569987 0,0004653 0,000628154
Para um determinado conjunto de vértices L e de amostras W , sabe-se que quanto
menor o valor ρ , menor a quantidade de tetraedros e simplexos de maior dimensão,
131
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
Tabela 6.22 Valores dos parâmetros de relaxamento (amostras distribuídas uniformemente).Modelo |W | |L| λ ρinicio ρ
Coelho 2923043 4990 0,00320972 0,0002652 0,0002124Mão 3106193 4984 0,00278894 0,0002234 0,0001902
Max-Planck 3776005 4936 0,00540352 0,0003907 0,0003516
visto que menos vértices satisfazem a condição estabelecida pela Equação 5.21 para
cada testemunha w. Deste modo, tem-se que as malhas geradas a partir de amostras
distribuídas uniformemente possuem menos tetraedros e simplexos de maior dimensão
que as malhas geradas a partir de amostras distribuídas aleatoriamente, ver Tabelas 6.23
e 6.24. Os valores do parâmetro de relaxamento correspondentes são os mostrados nas
Tabelas 6.21 e 6.22.
Tabela 6.23 Quantidade de tetraedros e simplexos de maior dimensão (amostras distribuídasaleatoriamente).
Modelo |W| |L| tetraedros 4-simplexos 5-simplexosCoelho 3001568 4996 1632 118 5
Mão 2998507 4989 1388 77 0Max-Planck 3001203 5000 1247 66 1
Tabela 6.24 Quantidade de tetraedros e simplexos de maior dimensão (amostras distribuídasuniformemente).
Modelo |W| |L| tetraedros 4-simplexos 5-simplexosCoelho 2923043 4990 403 0 0
Mão 3106193 4984 541 2 0Max-Planck 3776005 4936 282 4 0
Pela Equação |W |πε2 ≤ |L|πλ 2 ( ou ≥), tem-se que o valor de ρ diminui conforme
o valor |W | aumenta, o que pode ser confirmado pelos dados da Tabela 6.25. A me-
dida que se aumenta a quantidade de vértices |L|, o valor λ diminui como consequência.
Ao se aumentar a quantidade de vértices |L| deve-se diminuir o valor ρ , caso contrário
mais simplexos de alta dimensão são gerados, devido a presença de mais vértices satis-
fazendo a condição estabelecida pela Equação 5.21 para cada testemunha w. Entretanto,
a redução necessária do valor ρ só é possível com o aumento de |W |. Aumentar |L| sem
aumentar |W | resulta em malhas com mais tetraedros e simplexos de maior dimensão.
A estratégia de perturbação de vértices utilizada se mostrou eficiente para reduzir
a quantidade de tetraedros e simplexos de maior dimensão. As Tabelas 6.26 e 6.27
mostram a quantidade destes simplexos após 7 rodadas de execução da perturbação de
132
6.4. GSRM-RD
Tabela 6.25 Variação do parâmetro ρ de acordo com |W | e |L|.Modelo |W | |L| λ ρin ρ
Coelho3001568
1000 0,00641758 0,0002343 0,00035225000 0,00320972 0,0002620 0,0004045
60012951000 0,00761331 0,0001965 0,00027525000 0,0033589 0,0001939 0,0002715
vértices. Outra vez, a quantidade de tetraedros e simplexos de maior dimensão das ma-
lhas geradas a partir de amostras distribuídas uniformemente é menor que para amostras
distribuídas aleatoriamente, visto que o algoritmo de geração de topologia é executado
novamente após cada rodada de perturbação, sempre com menores valores dos parâme-
tros de relaxamento no caso das amostras uniformemente distribuídas.
Tabela 6.26 Quantidade de tetraedros e simplexos de maior dimensão após perturbação de vér-tices (amostras distribuídas uniformemente).
Modelo |W| |L| tetraedros 4-simplexos 5-simplexosCoelho 2923043 4990 0 0 0
Mão 3106193 4984 6 0 0Max-Planck 3776005 4936 2 0 0
Tabela 6.27 Quantidade de tetraedros e simplexos de maior dimensão após perturbação de vér-tices (amostras distribuídas aleatoriamente).
Modelo |W| |L| tetraedros 4-simplexos 5-simplexosCoelho 3001568 5000 235 3 0
Mão 2998507 4989 126 6 0Max-Planck 3001203 5000 100 8 0
Após a perturbação dos vértices são executados colapsos combinatoriais para elimi-
nação de k-simplexos, com k > 2, segundo a estratégia descrita no Capítulo 5. Após este
procedimento, tem-se uma malha de triângulos, sem simplexos com dimensão maior. En-
tretanto, é possível que existam arestas não-variedades nesta malha, ou seja, arestas com
mais de dois triângulos incidentes. Este problema foi tratado removendo-se triângulos
que possuem alguma aresta de borda (ou seja, alguma aresta sem outra face incidente).
A Figura 6.20 ilustra uma aresta não-variedade (em vermelho) com suas três faces in-
cidentes (azul e amarelo). Neste caso os triângulos destacados em azul possuem uma
aresta de borda e qualquer um deles seria removido. Esta ilustração foi obtida a partir
da parte inferior da reconstrução do coelho com 5000 vértices (gerados pelo GNG).
133
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
Figura 6.20 Aresta não-variedade após a execução de colapsos combinatoriais.
Os problemas tratados durante o pós-processamento do GSRM-rD são consequên-
cia da violação das condições de amostragem especificadas em Boissonnat et al. (2011):
Uma destas condições exige que a distância entre qualquer ponto na superfície e os pon-
tos de referência (raio de amostragem - λ ) seja pequena se comparada a distância entre
qualquer ponto na superfície e seu eixo medial (reach da superfície - rch(M)). Por sua
vez, o parâmetro de relaxamento ρ precisaria ser limitado pelo raio de amostragem λ .
Além disto, todos os ρ-centros Delaunay deveriam ser protegidos, com o parâmetro de
proteção δ maior que o parâmetro de relaxamento ρ . Como a proteção dos centros não
é assegurada, executa-se a perturbação de vértices que adiciona alguma proteção aos
centros. Como o valor do parâmetro de relaxamento é calculado a partir de um valor λ
que por sua vez não necessariamente obedece às restrições especificadas em Boissonnat
et al. (2011), e não se pode assegurar que δ > ρ , podem existir simplexos de alta dimen-
sionalidade mesmo após a perturbação dos vértices, por isto são executados os colapsos
combinatoriais. Por fim, podem existir arestas não-variedades em regiões da malha em
que o valor λ não é pequeno se comparado com rch(M). Este problema é resolvido
removendo faces incidentes nestas arestas que possuem alguma aresta de borda. Os co-
lapsos combinatoriais seguidos da remoção de faces em arestas não-variedades definem
a estratégia de extração de variedades utilizada. As malhas produzidas pelo GSRM-rD
após a extração de variedade são mostradas na Figuras 6.19 (Mão) e 6.21 (Coelho e
Max-Planck).
As malhas obtidas pelo algoritmo de aprendizado de topologia do GSRM-iDT e do
GSRM-rD são comparadas de acordo com as métricas consideradas neste trabalho: re-
gularidade dos triângulos (Tabela 6.28); ângulos mínimos dos triângulos (Tabela 6.29);
distância de Hausdorff (Tabela 6.30); distribuição de vizinhança (Tabela 6.31). As nu-
vens de pontos utilizadas são as mesmas dos experimentos apresentados anteriormente
nas Subseções 6.1 e 6.2, referentes às superfícies: Coelho, Mão e Max-Planck. O con-
134
6.4. GSRM-RD
(a) Coelho (b) Max-Planck
Figura 6.21 Reconstruções do Coelho e o Max-Planck produzidas pelo GSRM-rD ( aproxima-damente 5000 vértices).
junto de vértices utilizados por ambos os algoritmos é o mesmo para cada superfície, e
foi obtido com o algoritmo de ordenamento do GSRM-iDT. Foram gerados 5000 vérti-
ces com o algoritmo de ordenamento, em seguida cada vértice foi movido para a posição
da amostra que o ativa como primeiro vencedor. Vértices que não são ativados por ne-
nhuma amostra não são inseridos na malha.
Os valores nas Tabelas 6.28 até 6.31 mostram que os algoritmos de aprendizado de
topologia desenvolvidos produzem reconstrução semelhantes de acordo com as métricas
consideradas. A principal diferença entre eles está na etapa de pós-processamento. O
GSRM-iDT requer pós-processamento para preencher buracos indesejados nas malhas,
enquanto que o GSRM-rD requer pós-processamento para extração de variedade a partir
de malhas com simplexos de dimensão k ≥ 2.
Para experimentos realizados com nuvens de pontos distribuídos de maneira aleató-
ria, ambos, GSRM-iDT e GSRM-rD, apresentaram algumas limitações. O GSRM-iDT
produziu não apenas bordas constituídas por polígonos fechados, mas também compo-
nentes desconexos, como ilustrado na Figura 6.22 correspondente à vista inferior do
coelho gerado pelo GSRM-iDT a partir de amostras aleatoriamente distribuídas. Neste
caso o algoritmo de detecção de buracos não pode corrigir este defeito. O GSRM-rD,
consegue evitar este tipo de problema, entretanto a estratégia de extração de variedades
135
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
GSRM-iDT
GSRM-rD
Figura 6.22 Reconstruções produzidas pelo GSRM-iDT e pelo GSRM-rD a partir de nuvem depontos amostrados de maneira uniformemente aleatória. Note que o GSRM-iDT não conseguiureproduzir corretamente uma das bordas.
que combina colapsos combinatoriais e remoção de faces em arestas não-variedades não
foi suficiente para produzir uma malha 2-variedade. Especificamente, pode acontecer
que nenhuma das faces incidentes em uma aresta não variedade tenham alguma aresta
de borda, como ilustrado pelas três faces destacadas na Figura 6.22. Portanto a estratégia
utilizada não foi suficiente para gerar malhas 2-variedades. A tarefa de preencher bordas
é mais simples que a extração de variedades, mas em alguns casos pode não possível
recuperar a topologia correta usando este tipo de procedimento. Por outro lado, a tarefa
de extrair variedades a partir de complexos simpliciais com dimensão arbitrária k > 2,
ainda precisa ser resolvida de maneira mais eficaz.
136
6.4. GSRM-RD
Tabela 6.28 Regularidade dos triângulos.Regularidade dos triângulos das malhas produzias pelo GSRM-iDT
Objeto No. de vértices No. de faces R(P)Coelho 4989 9878 0,757
Mão 4983 9906 0,752Max-Planck 4934 9824 0,775Regularidade dos triângulos das malhas produzias pelo GSRM-rD
Objeto No. de vértices No. de faces R(P)Coelho 4989 9882 0,759
Mão 4983 9907 0,728Max-Planck 4934 9828 0,776
Regularidade dos triângulos das malhas produzias pelo BPAObjeto No. de vértices No. de faces R(P)Coelho 4989 9718 0,746
Mão 4983 9715 0,702Max-Planck 4934 9749 0,767
Tabela 6.29 Ângulos mínimos das malhas e valores médios dos ângulos mínimos dos triângulosdas malhas. Valores em radianos.
GSRM-iDT GSRM-rD BPAαmin αmin αmin
min média min média min médiaCoelho 0,36 0,82 0,34 0,82 0,31 0,80
Mão 0,31 0,77 0,27 0,78 0,22 0,75Max-Planck 0,38 0,84 0,17 0,84 0,24 0,83
Também foram realizados experimentos com outros algoritmos de reconstrução de
superfícies, que não são baseados em aprendizado: Ball-Pivoting (Bernardini et al.,
1999), Poisson (Kazhdan et al., 2006), Power Crust (Amenta et al., 2001). O princípio
básico do algoritmo Ball-pivoting (BPA) é simples: três pontos formam um triângulo se
uma bola de raio especificado pelo usuário toca estes pontos sem conter nenhuma outro
ponto. O método de reconstrução de superfícies Poisson consiste em uma abordagem
utilizando funções implícitas. A principal desvantagem deste método é a necessidade de
que as normais dos pontos sejam fornecidas. Como ponto positivo, os autores (Kazhdan
et al., 2006) alegam que o método altamente capaz de lidar com ruído. O Power Crust
é um método com garantias teóricas de produzir a fronteira “watertight” de um sólido
tri-dimensional poliédrico. As principais ferramentas utilizadas pelo Power Crust são o
diagrama de Voronoi e uma variação deste, denominada Power Diagram, definida em
(Amenta et al., 2001). O Poisson e o BPA foram escolhidos por serem bastante utiliza-
137
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
Tabela 6.30 Distâncias de Hausdorff.Modelo GSRM-iDT GSRM-rD BPACoelho 0,002915 0,002915 0,005179
Mão 0,002270 0,002270 0,003843Max-Planck 0,004525 0,004537 0,007360
Tabela 6.31 Distribuição de vizinhança (%).Distribuição de Vizinhança para GSRM-iDT
4 5 6 7 8 outrosCoelho 2,73 21,59 53,20 20,97 1,30 0,22
Mão 2,92 23,26 48,28 22,36 2,44 0,74Max-Planck 1,17 19,74 58,96 21,91 0,71 0,14
Distribuição de Vizinhança para GSRM-rD4 5 6 7 8 outros
Coelho 2,68 21,72 53,11 20,80 1,46 0,22Mão 3,05 23,13 48,76 22,01 2,71 0,34
Max-Planck 1,15 19,61 59,30 19,06 0,73 0,14Distribuição de Vizinhança para BPA
4 5 6 7 8 outrosCoelho 3,31 22,70 48,69 20,91 2,48 2,32
Mão 4,09 22,92 44,31 22,17 3,35 3,15Max-Planck 1,72 19,74 56,32 19,50 1,34 1,38
dos já existem implementações gratuitamente disponíveis. O PowerCrust, além de estar
disponível gratuitamente é um dos primeiros métodos com garantias teóricas.
As implementações do BPA e do Poisson utilizadas estão disponíveis na ferramenta
Meshlab 4. A implementação do Power Crust utilizada foi a disponibilizada pelos au-
tores 5. Todos os parâmetros utilizados foram os que são fornecidos por padrão. As
nuvens de pontos fornecidas como entrada para o Poisson e o Power Crust são os vérti-
ces da superfície original (35947 pontos para o coelho). O BPA foi testado tanto com o
conjunto de vértices original quanto com o conjunto de vértices gerado pelo GSRM-iDT
(4989 vértices para o coelho). A malha gerada pelo método Poisson possui apenas 8648
vértices, enquanto que o Power Crust gerou uma malha com 277243 vértices (ver Figura
6.23).
Tendo em vista que o Poisson e o PowerCrust foram desenvolvidos com o objetivo de
reconstruir malhas “watertight”, ou seja, sem buracos (Figura 6.23), não seria justo com-
parar estes métodos utilizando os modelos anteriores (coelho, mão, Max-Planck), visto
4http://meshlab.sourceforge.net/5http://www.cs.ucdavis.edu/ amenta/powercrust.html
138
6.4. GSRM-RD
que a distância para a superfície original aumentaria muito devido a não correspondên-
cia dos pontos amostrados nas regiões de buracos na superfície original. Com relação às
métricas que dizem dizem respeito a qualidade das malhas, os resultados visuais (Figura
6.23) mostram que os triângulos gerados pelo BPA e pelas soluções propostas são mais
regulares do que os triângulos gerados pelo Poisson, e polígonos gerados pelo Power
Crust. Outra dificuldade encontrada para comparação é que estes métodos alteram a
quantidade de vértices na malha, sendo difícil controlar a resolução desejada. O BPA
não altera o número de pontos de entrada, sendo possível compará-lo com as soluções
propostas considerando malhas com número semelhante de vértices. Por este motivo, as
tabelas (Tabelas 6.28 até 6.31), comparam apenas os resultados do BPA com as soluções
proposta.
Pelos valores apresentados nas Tabelas 6.28 até 6.31, verifica-se que as soluções pro-
postas produzem melhores resultados que o BPA segundo as métricas consideradas. A
Tabela 6.28 mostra que a regularidade dos triângulos gerados pelas soluções propostas
foram melhores em todos os experimentos (R(P) mais próximo de 1). A distância de
Hausdorff das malhas geradas pelas soluções propostas foram menores que as distâncias
das malhas geradas pelo BPA em todos os experimentos, conforme mostra a Tabela 6.30.
As soluções propostas também foram capazes de produzir uma melhor distribuição de
vizinhança, conforme mostra a Tabela 6.31, com uma maior percentual de nodos que
possuem 6 vizinhos, e um menor percentual de nodos que possuem uma quantidade de
vizinhos diferente da grande maioria dos nodos (coluna “outros” na Tabela 6.31. Con-
siderando os ângulos mínimos das malhas, o GSRM-iDT foi melhor que o BPA em
todos os experimentos, enquanto que o GSRM-rD apresentou ângulo mínimo menor
(portanto pior desempenho) que o BPA apenas para a malha correspondente ao Max-
Planck. Mesmo neste caso, o valor médio dos ângulos mínimos dos triângulos gerados
pelo GSRM-rD foi um pouco melhor que o BPA.
Os resultados visuais também são favoráveis aos métodos propostos tendo em vista
os “defeitos” observados nas malhas geradas pelo BPA, como ilustrado na Figura 6.24.
Isto é facilmente visível pela orelha do coelho na reconstrução que usa os vértices ge-
rados pelo GSRM-iDT, bem como nos vários buracos indesejados presentes na malha
gerada a partir dos vértices da malha original (ver Figura 6.24).
Para comparar Poisson e PowerCrust com as soluções propostas segundo o critério
da distância para a malha original, realizamos experimentos com objetos que são ori-
ginalmente watertight: (a) genus 3, (b) fertilidade, (c) anjo David (Figura 6.25). Estes
139
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
(a) Reconstrução Poisson (b) Reconstrução Power Crust
Figura 6.23 Reconstruções produzidas pelos métodos Poisson e Power Crust.
objetos estão disponíveis no repositório aimshape6 (Falcidieno, 2004). Os dados sobre
quantidade vértices e de faces dos modelos originais, bem como do número de pontos
amostrados para treinamento do GSRM-iDT e GSRM-rD estão na Tabela 6.32.
Tendo em vista as diferentes características dos modelos, e visando uma compara-
ção justa, a entrada fornecida varia de acordo com o método. O PowerCrust aumenta o
número de vértices na malha, assim, a reconstrução obtida a partir dos pontos originais
resultou em malhas com mais de 2 milhões de vértices para os modelos anjo e fertilidade,
e não foi possível calcular a distância para a malha original utilizando a ferramenta Me-
tro. Sendo assim, utilizou-se o conjunto de vértices obtido com o GSRM-iDT (que é
um subconjunto dos pontos originais). Para o Genus3, também é mostrado o resultado
referente à malha gerada a partir dos pontos originais. O Poisson reduz a quantidade de
vértices, assim a reconstrução foi feita a partir dos pontos originais, e as normais dos pon-
tos foram estimadas a partir das normais dos triângulos da malha original. O BPA não
altera a quantidade de vértices fornecida. Assim é possível comparar malhas de mesma
resolução que as produzidas com as soluções propostas. Para um dos modelos (anjo
David) os pontos originais também foram fornecidos como entrada para o BPA, gerando
uma malha de resolução bem maior, para ilustrar que mesmo neste caso, o GSRM-iDT
consegue resultado semelhantes com uma menor quantidade de vértices. Como o BPA
6http://www.aimatshape.net/
140
6.4. GSRM-RD
Vértices
GSRM-iDT
Vértices
Originais
Figura 6.24 Reconstruções produzidas pelo método BPA.
(a) genus 3 (b) fertilidade (c) anjo David
Figura 6.25 Modelos originais sem buracos.
também produz alguns buracos indesejados na malha, foi utilizada a mesma ferramenta
(OpenFlipper) para preencher os buracos nas malhas do BPA e do GSRM-iDT.
A Tabela 6.33 mostra as distâncias de Hausdorff para a malha original. Verifica-
se que as soluções propostas apresentaram menor distância para a superfície original
que os demais métodos comparados, menos com uma menor quantidade de vértices.
A única execução é genus3, em que o PowerCrust produziu malhas mais próximas à
malha original, porém com uma quantidade bem maior de vértices. As reconstruções
produzidas pelos GSRM-iDT e GRSM-rD são ilustradas nas Figuras 6.26 e 6.27
Também foram realizados experimentos com métodos mais intrincados (Buddha e
Armadillo), ambos disponíveis no repositório Stanford. Conforme esperado pelos re-
141
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
(a) Anjo David (aprox. 20000 vértices)
(b) Fertilidade e Genus3 (aprox. 5000 vértices)
Figura 6.26 Reconstruções do anjo David, Fertilidade e Genus3 com GSRM-iDT.
142
6.4. GSRM-RD
(a) Anjo David (aprox. 5000 vértices)
(b) Fertilidade e Genus3 (aprox. 5000 vértices)
Figura 6.27 Reconstruções do anjo David, Fertilidade e Genus3 com GSRM-rD.
143
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
Tabela 6.32 Dados sobre malhas originais (anjo David, fertilidade, genus3) e as amostras usadaspara treinar o GSRM-iDT e GSRM-rD.
Modelo N vértices N faces amostrasAnjo David 307144 614288 3017974Fertilidade 241607 483226 3133818
Genus3 36819 73646 1377856
Tabela 6.33 Distâncias de Hausdorff (modelos sem buracos).Modelo Método Vértices Distância
Anjo David
GSRM-iDT 4969 0,013451GSRM-iDT 19919 0,006294GSRM-rD 4969 0,021531
BPA 4969 0,027657BPA 307144 0,001231
Poisson 8260 0,048106PowerCrust 49264 0,029146
Fertilidade
GSRM-iDT 4999 0,0009971GSRM-rD 4999 0,010147
BPA 4999 0,023935Poisson 5558 0,023065
PowerCrust 53488 0,011127
Genus3
GSRM-iDT 4978 0,011129GSRM-rD 4978 0,013083
BPA 4978 0,013546Poisson 7630 0,026093
PowerCrust 391321 0,001995PowerCrust 52842 0,009100
sultados teóricos de Boissonnat et al. (2011); De Silva (2008), são necessárias mais
testemunhas e mais vértices para obter uma boa aproximação da superfície alvo. As re-
construções apresentadas nas Figuras 6.28 a 6.30 possuem 30000 (Armadillo) e 40000
(Buddha) vértices, e as nuvens de pontos utilizadas possuem 15749292 e 12079356 pon-
tos respectivamente. Para o Armadillo, o GSRM-iDT gerou uma malha com bem mais
buracos que os modelos apresentados anteriormente, mas ainda foi possível preencher es-
tes buracos e produzir uma malha para representar a superfície original. Para o Buddha,
o GSRM-iDT produziu algumas arestas de bordas (destacadas na Figura 6.29(a) ) que
desconectam partes da superfície, e impossibilitam a orientação das faces de maneira
coerente. Não é possível resolver este problema com os algoritmos de preenchimento de
buracos. Por outro lado, GSRM-rD não apresenta este tipo de problema, entretanto não
foi possível obter uma malha 2-variedade com a estratégia de extração de variedade uti-
144
6.4. GSRM-RD
Figura 6.28 Reconstrução do Armadillo com GSRM-iDT.
lizada. Note que, como as malhas produzidas pelo GSRM-rD não são 2-variedades, não
é possível obter uma visualização “smoothed shaded” para a Figura 6.30. É importante
ressaltar que, além de o Buddha ser um modelo muito detalhado, a malha original apre-
senta defeitos, tendo por exemplo, genus 104, sendo que maioria das ansas ((handles))
não são vistas no objeto real.
O PowerCrust e o Poisson foram bem sucedidos na reconstrução de uma malha
sem buracos (“watertight”) para o Buddha. O melhor resultado em termos de distân-
cia de Hausdorff foi alcançado pelo PowerCrust (d = 0,001843), seguido do Poisson
(d = 0,001992). Mesmo com os problemas apresentados, a distância da malha gerada
pelo GSRM-iDT foi d = 0,002020, portanto um resultado próximo do Poisson. Vale sa-
lientar que o a malha produzida pelo PowerCrust possui 1287155 vértices, e do Poisson
604969 vértices, enquanto a do GSRM-iDT possui apenas 59984 vértices. A distância
da malha gerada pelo BPA, após preenchimento de buracos, também foi d = 0,002020,
quando reconstruída com os vértices produzidos pelo GSRM-iDT. Quando fornecidos
os vértices da malha original na entrada, o BPA falhou na reconstrução do Buddha, ge-
rando uma malha com buracos em toda a parte, que não puderam ser preenchidos. Neste
caso a distância para a malha original foi d = 0,009070.
A seguir apresenta-se como os métodos propostos se comportam nas seguintes situa-
ções: Presença de ruído nos pontos de entrada, dados reais provenientes de digitalizado-
145
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
(a) (b) (c)
Figura 6.29 Reconstrução do Buddha com GSRM-iDT.
Figura 6.30 Reconstrução do Buddha com GSRM-rD.
146
6.4. GSRM-RD
GSRM-iDTOriginal GSRM-rD
Ruído
Sem Ruído
Figura 6.31 Reconstruções produzidas pelo GSRM-iDT e pelo GSRM-rD a partir de nuvem deponto com e sem ruído.
res 3D, reconstrução de variedades imersas em espaço Rd , com d > 3.
O experimento com dados ruidosos foi realizado adicionando ruído aleatório aos da-
dos, de modo que cada ponto com ruído esteja a uma distância máxima dm do ponto
original. Para o coelho ruidoso ilustrado na Figura 6.31, foi usado dm = 0.001. Esta
figura ilustra que tanto o GSRM-iDT quanto o GSRM-rD conseguiram gerar malhas em
que o ruído é menos perceptível que na malha original. Isto só foi possível graças aos
vértices gerados pelo algoritmo de ordenamento do GSRM-iDT. A Figura 6.32 ilustra as
malhas produzidas com vértices gerados pelo algoritmo de ordenamento e com vértices
movidos para a posição das amostras. A distância de Hausdorff comprova que a ma-
lha produzida com vértices gerados durante o ordenamento está mais próxima da malha
original (d = 0.003227) que a malha gerada com as próprias amostras (d = 0.005301).
A restrição do algoritmo de ordenamento neste caso, é que quanto mais vértices são
adicionados ao mapa mais fielmente estes vértices representam as amostras, consequen-
temente, malhas com mais vértices tendem a refletir mais a presença do ruído nos dados.
O próximo experimento ilustrado utilizou dados reais provenientes de digitalizador
3D (laser range scanner). Os dados utilizados correspondem à digitalização do coelho
disponibilizada no repositório Stanford. A digitalização completa do coelho compre-
ende 10 varreduras independentes que precisam ser alinhadas antes que se possa juntá-
las em um único modelo. Entretanto, no experimento ilustrado foram utilizados apenas
147
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
Sem Ruído
Vértices = Amostras da Superfície
Ruído
Vértices = Nodos do Mapa
Ruído
Vértices = Amostras da Superfície
Figura 6.32 Reconstruções produzidas pelo GSRM-iDT (nuvem de pontos com e sem ruído),usando como vértices os nodos do próprio mapa e pontos amostrados da superfície.
os dados referentes a uma única varredura, e portanto não foi necessário realizar o ali-
nhamento. Como mostrado na Figura 6.33 os pontos obtidos com digitalizadores laser
são distribuídos de maneira uniforme. Também se observam dados faltantes na digi-
talização, ou seja regiões sem amostras que não correspondem a buracos na superfície
original. Espera-se que os métodos propostos reproduza estes espaços vazios nas malhas
produzidas.
Os seguintes resultados são ilustrados na Figura 6.33: Malhas produzidas pelo
GSRM-iDT com 500 vértices, 1000 vértices e após o preenchimento de alguns bura-
cos; Malhas produzidas pelo GSRM-rD com 1000 vértices e parâmetro de relaxamento
com valores iguais a 80% e 50% do valor inicial. Vemos que a malha GSRM-iDT com
500 vértices reproduz as regiões vazias da nuvem de pontos, porém com esta quantidade
de vértices não foi possível representar uma das patas. Com 1000 vértices o GSRM-iDT
conseguiu reproduzir a forma dados de entrada, deixando as vazias as regiões claramente
vazias da nuvem de pontos, mas apareceram alguns buracos em regiões em que os dados
de estrada são esparsos, mas não é tão claro que seja uma região vazia, já que distância
entre as amostras é bem menor que em regiões mais visivelmente vazias. Se desejá-
vel, é possível preencher estes buracos conforme ilustrado na Figura 6.33. Esta é uma
dificuldade dos métodos
A Figura 6.33 também mostra as reconstruções produzidas pelo GSRM-rD com 1000
vértices. Com parâmetro de relaxamento ρ = 0,8∗ρinicio o GSRM-rD conseguiu repro-
duzir as regiões desconexas da nuvem de pontos, sem gerar os buracos do GSRM-iDT
em regiões onde as amostras são esparsas. Entretanto a malha possui muitos simple-
xos de alta-dimensionalidade (630 tetraedros, 508 4-simplexos, 134 5-simplexos, 13
6-simplexos), e apenas 63 triângulos, tendo gerado também 5 arestas isoladas. Com
esta configuração inicial não foi possível realizar a extração de variedades com a estra-
148
6.4. GSRM-RD
ρ = 0,8ρinício ρ = 0,5ρinício
500 vértices 1000 vértices 1000 vértices
(buracos preenchidos)
GSRM-iDT
GSRM-rD
Figura 6.33 Reconstruções a partir de dados reais.
tégia de colapsos combinatoriais usada nos demais experimentos. Com um menor valor
de ρ foi gerada uma representação similar à do GSRM-iDT porém com simplexos de
alta-dimensionalidade. Sendo assim, de acordo com este experimento, o GSRM-iDT se
mostrou mais adequado para lidar com dados reais. Porém este experimento não é con-
clusivo visto que foi realizado com apenas uma varredura de digitalização. Em trabalhos
futuros pretende-se explorar melhor a viabilidade de ambos os métodos com dados reais.
Por fim, o GSRM-rD também parece adequado para reconstrução de variedades em
espaços de dimensão maior. A Figura 6.34 mostra imagens da reconstrução produzida a
parametrização da garrafa de Klein imersa em R5 (do Carmo, 1992):
x = (a+ cos(u/2)∗ sin(v)− sin(u/2)∗ sin(2∗ v))∗ cos(u);
y = (a+ cos(u/2)∗ sin(v)− sin(u/2)∗ sin(2∗ v))∗ sin(u);
z = sin(u/2)∗ sin(v)+ cos(u/2)∗ sin(2∗ v);
149
CAPÍTULO 6. EXPERIMENTOS E RESULTADOS
w = sin(u);
t = cos(v);
São mostradas as projeções em três planos diferentes: xyz, yzw, zwt. Note que por
se tratar de uma variedade não orientável a iluminação produzida parece inconsistente,
pois neste caso não é possível distinguir entre interior e exterior. O GSRM-iDT também
conseguiria lidar com pontos em qualquer dimensão Rd , com uma extensão simples
da estrutura de dados utilizada, gerando 2-variedades imersas em espaços Rd . Com o
GSRM-rD é possível gerar k-variedades imersas em espaços Rd , pois o algoritmo não se
limita à geração de triângulos. Entretanto, neste trabalho não foi explorado este aspecto
do GSRM-rD, já que objetivo inicial é reconstrução de superfícies.
xyz
yzwzwt
Figura 6.34 Reconstrução da garrafa de Klein (1000 vértices) produzidas com o GSRM-rD.
150
7Discussões e Trabalhos Futuros
Durante este trabalho de doutorado, foram propostas soluções baseadas em Mapas Auto-
organizáveis com estrutura variante no tempo (SOM-TVS) para reconstrução de super-
fícies. A inspiração para utilizar uma abordagem baseada em mapas auto-organizáveis
veio da capacidade destes mapas em “arrastar” uma grade de vértices, como uma malha
de polígonos, na direção de um conjunto de pontos de entrada, além de possuírem uma
estrutura composta de vértices e arestas, sendo similar à representação de superfícies
através de malhas de polígonos. Particularmente, os mapas auto-organizáveis com estru-
tura variante do tempo possuem outras características interessantes para a reconstrução
de superfícies a partir de nuvens de pontos, que são a capacidade de aprender a topologia
de superfícies e de crescerem incrementalmente, gerando representações com diferentes
resoluções.
Assim, foram estudados os modelos de mapas auto-organizáveis com estrutura vari-
ante no tempo e foram definidas as características úteis que apresentam para o problema
de reconstrução de superfícies, bem como como suas limitações para a resolução deste
problema. Também foi feito um levantamento de outros métodos para reconstrução de
superfícies que são baseados em Mapas Auto-organizáveis, levando em consideração as
habilidades e deficiências de cada um deles. Dentre os modelos SOM-TVS estudados,
aqueles que possuem a habilidade de aprender topologia utilizam o aprendizado Heb-
biano Competitivo (CHL), proposto inicialmente por Martinetz e Schulten (1994), que
mostra que o CHL produz um grafo que é um subconjunto da triangulação de Delaunay
dos vértices do mapa. Esta característica é importante no contexto de reconstrução de
superfícies visto que as abordagens típicas em geometria computacional utilizam dia-
gramas de Voronoi e triangulações de Delaunay (Edelsbrunner e Mücke, 1994; Cazals
e Giesen, 2006; Dyer et al., 2009). Particularmente, existem garantias teóricas de que
a triangulação de Delaunay restrita é uma aproximação fiel da variedade em que os
151
CAPÍTULO 7. DISCUSSÕES E TRABALHOS FUTUROS
pontos foram amostrados, em termos de topologia, geometria e quantidades diferenciá-
veis (como normais e curvatura) Amenta (1998); Amenta e Bern (1998); Amenta et al.
(2000); Boissonnat e Oudot (2005).
O métodos que seguem esta abordagem tipicamente começam pela construção da
triangulação de Delaunay tri-dimensional, para a partir desta extrair a triangulação de
Delaunay restrita (bi-dimensional). Com o objetivo de tornar a construção do complexo
independente da dimensão ambiente, De Silva e Carlsson (2004) introduziram o com-
plexo de testemunhas, baseado trabalho de Martinetz e Schulten (1994) (CHL), e provou
que o complexo de testemunhas fracas de um conjunto de pontos L, é igual ao complexo
de Delaunay de L ( Wit(L,Rd) = Del(L,Rd) ). De Silva e Carlsson (2004) fazem dis-
tinção entre dois conjuntos de pontos: os pontos de referência utilizados na construção
do complexo, e as testemunhas usadas para guiar a seleção de simplexos que conectam
os pontos de referência. Sendo assim, a abordagem proposta neste trabalho está teo-
ricamente relacionada com o trabalho de De Silva e Carlsson (2004). Os algoritmos
de aprendizado de topologia propostos utilizam o conceito de testemunhas fracas para
criação de malhas de triângulos. As testemunhas são os pontos de entrada usados para
treinar o mapa, e os pontos de referência são os vértices do mapa.
Attali et al. (2007) estendem o teorema das testemunhas fracas de De Silva e Carls-
son (2004) para subvariedades do espaço Euclideano. Para k = 1,2, Attali et al. (2007)
mostram que se cada face de um k-simplexo σ possui uma testemunha fraca em M, en-
tão σ possui uma testemunha forte em M, desde que o conjunto de pontos L satisfaçam
as condições de amostragem especificadas por Attali et al. (2007), que levam em conta
a curvatura das superfícies. Se estes condições forem satisfeitas tem-se que Del(L,M)
= Wit(L,M). Portanto, este resultado é importante para justificar o uso de testemunhas
fracas nas abordagens de reconstrução de superfícies propostas nesta tese (GSRM e
GSRM-iDT). Por outro lado, é importante ressaltar que, os algoritmos de reconstrução
propostos utilizam um conjunto finito de testemunhas W para guiar a construção dos
simplexos. Neste caso, se fosse possível garantir que todo simplexo em Wit(L,M) pos-
sui pelo menos uma testemunha em W , seria possível mostrar que Wit(L,W ) é uma boa
aproximação de M seguindo a seguinte cadeia de aproximações apresentada por De Silva
(2008):
M= Del(L,M) =Wit(L,M) =Wit(L,W )
A consequência de não existir uma testemunha em W para cada simplexo que possui
testemunha em M, é o aparecimento de buracos indesejados na malha. Para minimizar
152
este problema, o GSRM e GSRM-iDT utilizam uma versão “preguiçosa” do complexo
de testemunhas, permitindo a criação de triângulos que não possuam testemunha em W ,
desde que exista uma testemunha em W para todas as suas arestas. Isto não é suficiente
para resolver buracos que aparecem quando determinadas arestas não podem ser criadas.
Neste caso, é preciso executar algum algoritmo de preenchimento de buracos em uma
etapa de pós-processamento.
Ambos, GSRM e GSRM-iDT, são baseados no GNG (para ordenamento dos vérti-
ces) e no complexo de testemunhas fracas (para o aprendizado de topologia), apresen-
tando as seguintes diferenças: o algoritmo de ordenamento do GSRM utiliza um critério
baseado em esfera de Thales para remoção de arestas, além do critério de idade das
arestas utilizado pelo GNG. O GSRM-iDT utiliza apenas o critério baseado em esfera
de Thales para remoção de arestas durante a etapa de ordenamento. O algoritmo de or-
denamento do GSRM-iDT se mostrou capaz de gerar vértices distribuídos de maneira
mais uniforme que o GNG. O algoritmo de aprendizado de topologia de ambos utiliza
heurísticas para evitar mais de duas faces incidentes em uma mesma aresta, gerando
malhas 2-variedade, e também para evitar arestas que se cruzam. A heurística utilizada
pelo GSRM-iDT para evitar arestas não-variedades utiliza o critério local da iDT de
superfícies planas por partes, apresentada por Bobenko e Springborn (2007).
Os buracos indesejados que aparecem nas malhas geradas pelo GSRM e GSRM-iDT
motivaram o desenvolvimento de um algoritmo de aprendizado de topologia baseado
no complexo Delaunay relaxado que fosse capaz de gerar malhas sem buracos. O com-
plexo Delaunay relaxado está baseado na ideia de que os verdadeiros centros Delaunay
dos simplexos pertencentes a Delρ(L,W ) devem estar dentro de esferas centradas nas tes-
temunhas fracas disponíveis (w ∈W ), com um determinado raio ρ , sendo ρ o parâmetro
de relaxamento. Assim, para valores suficientemente grandes de ρ , Delρ não possui
buracos indesejados. Boissonnat et al. (2011) mostram que os complexos Del(L,M) e
Witρ(L,W ) são equivalentes sobre determinadas condições de amostragem de L e de W .
Sabe-se, pelas definições apresentadas por Boissonnat et al. (2011) e no Capítulo 2 que
um ρ-centro Delaunay é também uma ρ-testemunha para um simplexo σ . Os resultados
teóricos de Boissonnat et al. (2011) motivaram o desenvolvimento de uma método de
reconstrução de superfícies (GSRM-rD) cujo algoritmo de aprendizado de topologia se
baseia no complexo Delaunay relaxado, para produzir uma representação da superfície
alvo M.
Tendo em vista que as condições de amostragem apresentadas por Boissonnat et al.
(2011) não foram reproduzidas nos experimentos, a malha gerada não é uma 2-variedade.
153
CAPÍTULO 7. DISCUSSÕES E TRABALHOS FUTUROS
Para remover simplexos com dimensionalidade maior que 2 os vértices da malha são per-
turbados seguindo uma heurística que consiste em mover o vértices mais próximos do
ρ-centro Delaunay x de cada simplexo de alta-dimensionalidade em direção a x, des-
truindo este simplexo. Os experimentos realizados mostraram que esta estratégia é efi-
ciente no sentido de que, após a perturbação dos vértices a quantidade de simplexos de
alta-dimensionalidade gerada pelo algoritmo de aprendizado de topologia do GSRM-rD
diminuiu. Entretanto, é possível que mesmo após várias iterações de perturbação de vér-
tices existam simplexos com dimensionalidade maior que 2, além de arestas com mais
de dois triângulos incidentes. Neste caso, é executada uma estratégia de extração de
variedades que consiste de: (a) colapsos combinatoriais de simplexos com dimensiona-
lidade maior que 2 para obtenção de uma malha de triângulos; e (b) remoção de faces
incidentes em arestas não-variedades, desde que estas faces possuam pelo menos uma
aresta de borda.
Foram realizados experimentos e comparadas as reconstruções produzidas pelos mé-
todos GSRM, GSRM-iDT e GSRM-rD, entre si, e com outros métodos de reconstrução
de superfícies, baseados em aprendizagem ou não. Os resultados obtidos pelo GSRM,
GSRM-iDT e GSRM-rD são semelhantes, o que é esperado tendo em vista que os algo-
ritmos de aprendizado de topologia utilizados são baseados em estruturas relacionadas
com o complexo de Delaunay: o complexo de testemunhas fracas e o complexo de De-
launay relaxado. O GSRM foi comparado com outros três métodos, dois deles seguem a
abordagem de aprendizado (Brito et al., 2008; Ivrissimtzis et al., 2003), e o outro é um
método geométrico com garantias teóricas, PowerCrust (Amenta et al., 2001). Consi-
derando três métricas numéricas (Distância de Hausdorff, Regularidade de Polígonos e
Distribuição de Vizinhança), foram realizadas comparações dos modelos propostos com
os resultados disponíveis nos artigos originais dos algoritmos anteriores. Os experimen-
tos mostram que o GSRM é capaz de gerar malhas mais próximas das malhas originais
do que o método denominado Malhas Neurais (Neural Meshes), segundo a distância
de Hausdorff, e que possuem melhor regularidade de polígonos que o Power Crust e o
método baseado em SOM proposto por Brito et al. (2008). Com respeito a distribui-
ção de vizinhança, a Malha Neural apresentou resultados melhores que o GSRM. Não
obstante, o GSRM também conseguiu gerar malhas com distribuição de vizinhança sa-
tisfatória. Em seguida as malhas produzidas pelo GSRM-iDT foram comparadas com as
do GSRM, apresentando resultados semelhantes de acordo com as métricas considera-
das, sendo que o principal avanço do GSRM-iDT com relação ao GSRM é a habilidade
de produzir malhas cujas arestas são localmente Delaunay de acordo com o critério apre-
154
sentado por Bobenko e Springborn (2007). Uma versão mais rápida do GSRM-iDT,
chamada nesta tese de GSRM-TTR (tempo de treinamento reduzido), foi desenvolvida
e testada com nuvens de pontos que representam estruturas anatômicas humanas.
Em seguida foram realizados experimentos com o GSRM-rD e comparados com o
GSRM-iDT e com três métodos bem conhecidos, não baseados em aprendizado. Dois
deles, Poisson (Kazhdan et al., 2006) e Ball-pivoting (BPA) (Bernardini et al., 1999) es-
tão disponíveis na ferramenta Meshlab, o terceiro é o PowerCrust (Amenta et al., 2001),
cuja implementação é disponibilizada gratuitamente na Internet pelos autores. O BPA
foi comparado com as abordagens propostas segundo as métricas consideradas, visto que
é o método com características mais semelhantes às abordagens propostas. Por exemplo,
ambos PowerCrust e Poisson, produzem uma malha “watertight”, portanto não visam
reproduzir as bordas da superfície original. Além disto, os resultados visuais mostram
que os triângulos gerados pelo BPA são mais regulares que os triângulos gerados pelo
Poisson e os polígonos gerados pelo PowerCrust. Os experimentos mostram que as
abordagens propostas (GSRM-iDT e GSRM-rD) apresentaram melhores resultados que
o BPA de acordo com as métricas consideradas.
As soluções propostas foram comparadas com o PowerCrust e o Poisson com res-
peito à distância de Hausdorff entre as malhas geradas e as malhas originais. Para uma
comparação justa foram utilizadas malhas originais sem buracos, já que ambos, Power-
Crust e Poisson produzem malhas “watertight”. Os resultados mostraram, que mesmo
com um menor número de vértices, as soluções propostas produziram malhas mais próxi-
mas às originais na maioria dos casos. Desta forma, mostramos é possível utilizar Mapas
Auto-organizáveis de Topologia Variável (SOM-TVS) como solução para o problema de
reconstrução de superfícies, produzindo malhas que são próximas das superfícies origi-
nais e cujos triângulos são de boa qualidade considerando as métricas de regularidade,
distribuição de vizinhança e ângulo mínimo.
A principal limitação das soluções propostas é a dependência das condições de amos-
tragem de pontos na superfície original. Todas as nuvens de pontos utilizadas para pro-
duzir malhas de boa qualidade foram densas e amostradas de maneira uniforme. A
quantidade de vértices para representar uma superfície depende de medidas relaciona-
das à sua curvatura conforme discutido por Attali et al. (2007); Boissonnat et al. (2011).
Quanto maior a quantidade de vértices maior também deve ser a quantidade de amostras
(testemunhas) necessárias para aprender os simplexos que definem a conectividade en-
tre eles. Attali et al. (2007); Boissonnat et al. (2011) formalizaram estas condições de
amostragem para que os complexos apresentados por eles sejam uma boa aproximação
155
CAPÍTULO 7. DISCUSSÕES E TRABALHOS FUTUROS
da variedade alvo, geométrica e topologicamente. Na prática verificamos que estas con-
dições restringem o uso destes métodos em situações reais. Não obstante, com algumas
heurísticas e pós-processamento foi possível alcançar bons resultados.
Para o GSRM e GSRM-iDT a principal consequência de a nuvem de pontos não
ser densa o suficiente é o aparecimento de buracos indesejados nas malhas. Por outro
lado, sabe-se que outros métodos bem conhecidos para detectar bordas (Curless e Le-
voy, 1996; Bernardini et al., 1999; Dey e Giesen, 2001) em superfícies estão sujeitos às
limitações semelhantes, ou seja, as regiões onde a densidade de amostragem é baixa são
entendidas como buracos, visto que os algoritmos não diferenciam baixa densidade cau-
sada por ausência de pontos na região ou por problemas durante a amostragem. Tendo
em vista que é comum em dados reais existirem regiões sub-amostradas devido a defi-
ciências no processo de amostragem da superfície, métodos como o Poisson (Kazhdan
et al., 2006), PowerCrust (Amenta et al., 2001), e o método de Dey e Goswami (2003)
foram propostos para gerar malhas “watertight”. Todavia eles não resolvem o problema
de detecção de bordas, de modo que não conseguem reproduzir corretamente superfí-
cies com buracos. Outra desvantagem do Poisson e PowerCrust em relação às soluções
propostas é que eles não levam em consideração a regularidade dos polígonos durante a
reconstrução, conforme pode ser observado nos experimentos realizados.
Uma limitação que diz respeito ao PowerCrust é a resolução das malhas, já que en-
quanto que as soluções propostas permitem ao usuário escolher a resolução desejada
(seja com base no número de vértices ou em alguma medida de erro), o PowerCrust
insere vários vértices na malha, gerando modelos com muitos elementos (mais de dois
milhões de vértices em alguns dos experimentos) que, dependendo da necessidade do
usuário, precisarão de pós-processamento para simplificação. O Poisson não permite
que o usuário escolha diretamente o número de vértices desejado, mas oferece a pos-
sibilidade de representações mais ou menos detalhadas de acordo com a profundidade
escolhida para a octree que é usada para representar a função implícita (Kazhdan et al.,
2006). Embora as soluções propostas nesta tese sempre produzam modelos com menos
vértices que pontos de entrada (amostras), outras soluções também baseadas em SOM-
TVS poderiam ser usadas para refinar os modelos, aprendendo mais detalhes de sua ge-
ometria sem alterar sua topologia, como métodos baseados no Growing Cell Structures
(Fritzke, 1994; Annuth e Bohn, 2010; Ivrissimtzis et al., 2003; Vierjahn et al., 2012).
Assim, em trabalhos futuros pretende-se investigar a viabilidade de um sistema para
reconstrução de superfície que utiliza modelos SOM-TVS diferentes para inicialmente
aprender a topologia e em seguida refinar a representação pelo aprendizado da geometria
156
da superfície alvo a partir dos pontos de entrada.
Um dos pontos fortes do Poisson (Kazhdan et al., 2006), segundo seus autores, é
a habilidade para lidar com dados ruidosos. Entretanto, isto só é possível às custas de
perca de detalhes na representação, semelhantemente ao comportamento dos SOM-TVS.
Deste modo, seria interessante, em trabalhos futuros, analisar e comparar o comporta-
mento das duas abordagens com respeito a diferentes tipos de ruídos nos dados.
A maior parte dos experimentos foram realizadas com nuvens de pontos distribuí-
dos de maneira uniforme. Esta consideração é aceitável visto que as nuvens de pontos
geradas pelos digitalizadores são, em geral, uniformes. Também foram realizados experi-
mentos em que os pontos de entrada são amostrados de maneira uniformemente aleatória.
Neste caso, ambos, GSRM-iDT e GSRM-rD, apresentaram limitações. O GSRM-iDT
não conseguiu reproduzir satisfatoriamente algumas bordas, gerando descontinuidades
que não existem na superfície original. O GSRM-rD conseguiu representar as bordas
adequadamente e foi bem sucedido na tentativa de evitar buracos indesejados, mas a
estratégia de extração de variedade não conseguiu extrair uma malha 2-variedade a par-
tir da malha gerada pelo GSRM-rD. Os experimentos mostraram que a estratégia de
colapsos combinatoriais foi suficiente para gerar uma malha de triângulos, entretanto a
estratégia utilizada para remover algumas das faces incidentes em arestas não-variedades
não foi suficiente para gerar uma malha 2-variedade. Sendo assim, os experimentos in-
dicam que o GSRM-rD poderia ser mais adequado para reconstrução a partir amostras
aleatoriamente distribuídas, desde que fosse utilizada uma estratégia mais eficiente para
a extração de variedades.
Em seguida foram realizados experimentos para verificar a viabilidade dos métodos
propostos (GSRM-iDT e GSRM-rD) para: lidar com dados ruidosos, lidar com dados
reais, e reconstruir variedades imersas em espaços com dimensão maior que 3. Ambos
GSRM-rD e GSRM-iDT conseguiram lidar de maneira satisfatória com dados ruidosos,
gerando malhas que amenizam o efeito do ruído se comparadas com a malha original
ruidosa. Neste caso, o efeito do ruído nos dados é amenizado quando os vértices gerados
pelo algoritmo de ordenamento da abordagem proposta são utilizados como vértices da
malha em lugar de um subconjunto dos dados de entrada. A restrição de ambas as
soluções (GSRM-iDT e GSRM-rD) ao lidar com dados ruidosos é que, quanto mais
vértices forem adicionados à malha, mais fielmente esta representará os dados de entrada,
e portanto o ruído nestes dados. Consequentemente o efeito do ruído só é amenizado em
malhas com resolução baixa.
O GSRM-iDT mostrou-se mais promissor ao lidar com dados reais, visto que a
157
CAPÍTULO 7. DISCUSSÕES E TRABALHOS FUTUROS
quantidade de buracos indesejados foi bem menor que a quantidade de simplexos de
alta-dimensionalidade gerados pelo GSRM-rD. Sendo mais fácil preencher buracos in-
desejados gerados pelo GSRM-iDT que extrair uma malha de triângulos 2-variedade a
partir do complexo simplicial gerado pelo GSRM-rD. Note que, como as nuvens utili-
zadas neste experimentos são menos densas que as nuvens realizadas nos experimentos
anteriores (dados não reais), tem-se que o valor do parâmetro de relaxamento do GSRM-
rD é mais alto, permitindo a criação de mais simplexos de alta dimensionalidade.
Apenas o GSRM-rD foi testado para reconstrução de variedades imersas em espaços
com dimensão maior que 3. E os resultados apresentados foram promissores, fazendo
com que a utilização do GSRM-rD na reconstrução de variedades em dimensões arbitrá-
rias seja uma área a ser explorada em trabalhos futuros. Seria possível também estender
a estrutura de dados do GSRM-iDT para lidar com pontos no espaço Rd . Entretanto, o
GSRM-iDT produz apenas malhas de triângulos imersas em Rd , enquanto que o GSRM-
rD pode gerar k-complexos simpliciais, com dimensionalidade k arbitrária, imersos em
espaços Rd .
Dentre os pontos fortes das soluções propostas pode-se destacar: (a) Geração de
malhas com número variável de elementos (vértices e faces), ou seja, malhas com re-
soluções diferentes, de acordo com a necessidade da aplicação; (b) geração malhas que
representam satisfatoriamente a superfície alvo, tanto em termos de geometria como de
topologia; (c) geração de malhas com boa qualidade considerando as métricas de regu-
laridade dos triângulos, distribuição de vizinhança e ângulo mínimo dos triângulos; (d)
habilidade para lidar com dados ruidosos. Dentre as limitações pode-se destacar: (a)
Dependência da qualidade da nuvem de pontos, que precisa ser densa e uniforme; (b)
Regiões sub-amostradas são representadas como bordas na malha original.
Além dos trabalhos futuros já mencionados sugere-se: (a) Utilização das soluções
propostas, em particular o GSRM-rD, para a reconstrução de variedades em dimensões
arbitrárias. O processo de aprendizado de variedade (manifold learning) (Boissonnat
et al., 2009), possui diferentes áreas de aplicação, incluindo aprendizagem de máquina
(Belkin e Niyogi, 2004), reconhecimento de padrões (Seow et al., 2005), processamento
de sinais e imagens (Lee et al., 2003), computação neural (Demers e Y, 1993); (b) in-
vestigação, e/ou desenvolvimento, de técnicas mais eficientes de extração de variedades
com base em trabalhos anteriores (Amenta e Bern, 1998; Amenta et al., 2000; Varnuska
e Kolingerova, 2004); (c) utilização das soluções propostas em aplicações com dados re-
ais, obtidos não apenas de digitalizadores a laser, mas também nuvens de pontos geradas
a partir de imagens de câmera e imagens volumétricas.
158
Referências Bibliográficas
Delaunay, B. N. (1934). Sur la sphère vide. Bulletin of Academy of Sciences of the
USSR, (6), 793–800.
Kohonen, T. (1982). Self-Organized Formation of Topologically Correct Feature Maps.
Biological Cybernetics, 43, 59–69.
Boissonnat, J.-D. (1984). Geometric structures for three-dimensional shape representa-
tion. ACM Transactions on Graphics, 3, 266–286.
Miller, J. V., Breen, D. E., Lorensen, W. E., O’Bara, R. M., e Wozny, M. J. (1991).
Geometrically deformed models: a method for extracting closed geometric models
from volume data. ACM SIGGRAPH Computer Graphics, 25(4), 217–226.
do Carmo, M. P. (1992). Riemannian Geometry. Birkhauser, Boston, MA.
Erwin, E., Obermayer, K., e Schulten, K. (1992). Self-organizing maps: Ordering, con-
vergence properties and energy functions. Biological Cybernetics, 67, 47–55.
Hoppe, H., Derose, T., Duchamp, T., Mcdonald, J., e Stuetzle, W. (1992). Surface re-
construction from unorganized points. In Proceedings of Siggraph Conference, pages
71–78.
Cheung, E. e Constantinides, A. (1993). Fast nearest neighbour search algorithms for
self-organising map and vector quantisation. In Signals, Systems and Computers,
1993. 1993 Conference Record of The Twenty-Seventh Asilomar Conference on, vo-
lume 2, pages 946–950.
Chew, L. P. (1993). Guaranteed-quality mesh generation for curved surfaces. In Procee-
dings of the Ninth Annual Symposium on Computational Geometry, pages 274–280.
Demers, D. e Y, G. C. (1993). Non-linear dimensionality reduction. In Advances in
Neural Information Processing Systems 5, pages 580–587. Morgan Kaufmann.
Fritzke, B. (1994). Growing cell structures–a self-organizing network for unsupervised
and supervised learning. Neural Networks, 7(9), 1441–1460.
Edelsbrunner, H. e Mücke, E. P. (1994). Three-dimensional alpha shapes. ACM Tran-
sactions on Graphics, 13(1), 43–72.
159
REFERÊNCIAS BIBLIOGRÁFICAS
Martinetz, T. e Schulten, K. (1994). Topology representing networks. Neural Networks,
7(3), 507–522.
Edelsbrunner, H. e Shah, N. R. (1994). Triangulating topological spaces. In Proceedings
of the tenth annual symposium on Computational geometry, pages 285–292.
Fritzke, B. (1995a). Growing grid - a self-organizing network with constant neigh-
borhood range and adaptation strength. Neural Processing Letters, 2, 9–13.
Fritzke, B. (1995b). A growing neural gas network learns topologies. In Advances in
Neural Information Processing Systems 7, pages 625–632.
Fritzke, B. (1996). Growing self-organizing networks - why? In European Symposium
on Artificial Neural Networks, pages 61–72.
Fritzke, B. (1996). Unsupervised ontogenetic networks. In Handbook of Neural Compu-
tation. Institute of Physics Publishing and Oxford University Press.
Curless, B. e Levoy, M. (1996). A volumetric method for building complex models from
range images. In Proceedings of the 23rd annual conference on Computer graphics
and interactive techniques, pages 303–312.
Fritzke, B. (1997). A self-organizing network that can follow non-stationary distributi-
ons. In Proceedings of the 7th International Conference on Artificial Neural Networks,
pages 613–618.
Qin, H., Mandal, C., e Vemuri, B. (1998). Dynamic catmull-clark subdivision surfaces.
IEEE Transactions on Visualization and Computer Graphics, 4(3), 215–229.
Hoffmann, M. e Varady, L. (1998). Free-form modelling surfaces for scattered data by
neural networks. Journal for Geometry and Graphics, 2(1), 1–6.
Cignoni, P., Rocchini, C., e Scopigno, R. (1998). Metro: Measuring error on simplified
surfaces. Computer Graphics Forum, 17(2), 167–174.
Amenta, N., Bern, M., e Kamvysselis, M. (1998a). A new voronoi-based surface re-
construction algorithm. In Proceedings of the 25th annual conference on Computer
graphics and interactive techniques, SIGGRAPH ’98, pages 415–421.
Amenta, N., M.Bern, e Kamvysselis, M. (1998b). A new voronoi-based surface recons-
truction algorithm. In Siggraph Conference Proceedings, pages 415–422.
160
REFERÊNCIAS BIBLIOGRÁFICAS
Kohonen, T. (1998). The self-organizing map. Neurocomputing, 21(1-3), 1–6.
Amenta, N. e Bern, M. (1998). Surface reconstruction by voronoi filtering. Discrete and
Computational Geometry, 22, 481–504.
Amenta, N. (1998). The Crust and the β -Skeleton: Combinatorial Curve Reconstruction.
Graphical Models and Image Processing, 60(2), 125–135.
Kaski, S., Honkela, T., Lagus, K., e Kohonen, T. (1998). WEBSOM - Self-organizing
maps of document collections. Neurocomputing, 21(1-3), 101–117.
Bernardini, F., Mittleman, J., Rushmeier, H., Silva, C., e Taubin, G. (1999). The ball-
pivoting algorithm for surface reconstruction. IEEE Transactions on Visualization
and Computer Graphics, 5(4), 349–359.
Varady, L., Hoffmann, M., e Kovacs, E. (1999). Improved free-form modelling of scat-
tered data by dynamic neural networks. Journal for Geometry and Graphics, 3(2),
177–181.
Jockusch, J. e Ritter, H. J. (1999). An instantaneous topological mapping model for
correlated stimuli. In Proceedings of the International Joint Conference on Neural
Networks, volume 1, pages 259–534.
Wang, J.-H. e Sun, W.-D. (1999). On the characteristics of growing cell structures (GCS)
neural network. Neural Processing Letters, 10, 139–149.
Amenta, N. e Choi, S. (1999). One-pass delaunay filtering for homeomorphic 3d surface
reconstruction. Technical report, Austin, TX, USA.
Yu, Y. (1999). Surface reconstruction from unorganized points using self-organizing
neural networks. In Proceedings of IEEE Visualization Conference, pages 61–64.
Xia, J., Ip, H. H., Samman, N., Wang, D., Kot, C. S., Yeung, R. W., e Tideman, H.
(2000). Computer-assisted three-dimensional surgical planning and simulation: 3d
virtual osteotomy. International Journal of Oral and Maxillofacial Surgery, 29(1), 11
– 17.
Leibon, G. e Letscher, D. (2000). Delaunay triangulations and voronoi diagrams for
riemannian manifolds. In Proceedings of the sixteenth annual symposium on Compu-
tational geometry, pages 341–349.
161
REFERÊNCIAS BIBLIOGRÁFICAS
Levoy, M., Pulli, K., Curless, B., Rusinkiewicz, S., Koller, D., Pereira, L., Ginzton,
M., Anderson, S., Davis, J., Ginsberg, J., Shade, J., e Fulk, D. (2000). The digital
michelangelo project: 3d scanning of large statues. In Proceedings of the 27th annual
conference on Computer graphics and interactive techniques, pages 131–144.
Amenta, N., Choi, S., Dey, T. K., e Leekha, N. (2000). A simple algorithm for homeo-
morphic surface reconstruction. In International Journal of Computational Geometry
and Applications, pages 213–222.
Dittenbach, M., Rauber, A., e Merkl, D. (2001). Business, culture, politics, and sports
how to find your way through a bulk of news? on content-based hierarchical structu-
ring and organization of large document archives. In Database and Expert Systems
Applications, volume 2113, pages 200–210.
Praun, E., Sweldens, W., e Schröder, P. (2001). Consistent mesh parameterizations.
In Proceedings of the 28th annual conference on Computer graphics and interactive
techniques, SIGGRAPH ’01, pages 179–184.
Dey, T. K. e Giesen, J. (2001). Detecting undersampling in surface reconstruction. In
Proceedings of the seventeenth annual symposium on Computational geometry, pages
257–263.
Edelsbrunner, H. (2001). Geometry and Topology for Mesh Generation. Cambridge
University Press, Cambridge.
Amenta, N., Choi, S., e Kolluri, R. K. (2001). The power crust. In Proceedings of the
sixth ACM symposium on Solid modeling and applications, pages 249–266.
Rauber, A., Dittenbach, M., e Merkl, D. (2001). Towards automatic content-based orga-
nization of multilingual digital libraries: An english, french and german view of the
russian information agency nowosti news. In Proceedings of the Third All-Russian Sci-
entific Conference "Digital Libraries: Advanced Methods And Technologies, Digital
Collections"(RCDL01).
Barhak, J. (2002). Freeform objects with arbitrary topology from multirange images.
Ph.D. thesis, Institute of Technology, Haifa, Israel.
Marsland, S., Shapiro, J., e Nehmzow, U. (2002). A self-organising network that grows
when required. Neural Networks, 15(8-9), 1041–1058.
162
REFERÊNCIAS BIBLIOGRÁFICAS
Dittenbach, M., Rauber, A., e Merkl, D. (2002). Uncovering hierarchical structure in
data using the growing hierarchical self-organizing map. Neurocomputing, 48(1-4),
199–216.
Rauber, A., Pampalk, E., e Merkl, D. (2002). Using psycho-acoustic models and self-
organizing maps to create a hierarchical structuring of music by musical styles. In
Proceedings of the 3rd International Symposium on Music Information Retrieval, pa-
ges 71–80.
Saleem, W. (2003). A flexible framework for learning-based Surface Reconstruction.
Master’s thesis, Computer Science Departament, University of Saarland, Saabrucken,
Germany.
Ivrissimtzis, I., Jeong, W.-K., e Seidel, H.-P. (2003). Neural meshes: statistical learning
methods in surface reconstruction. Research Report MPI-I-2003-4-007, Max-Planck-
Institut für Informatik, Stuhlsatzenhausweg 85, 66123 Saarbrücken, Germany.
Lee, A. B., Pedersen, K. S., e Mumford, D. (2003). The nonlinear statistics of high-
contrast patches in natural images. International Journal of Computer Vision, 54(1-3),
83–103.
Dey, T. K. e Goswami, S. (2003). Tight cocone: a water-tight surface reconstructor. In
Proceedings of the eighth ACM symposium on Solid modeling and applications, pages
127–134.
Ivrissimtzis, I. P., k. Jeong, W., e p. Seidel, H. (2003). Using growing cell structures for
surface reconstruction. In Proceedings of the Shape Modeling International, pages
78–86.
Falcidieno, B. (2004). Aim@shape project presentation. In Proceedings of the Shape
Modeling International, page 329.
Guibas, L. e Russel, D. (2004). An empirical comparison of techniques for updating
delaunay triangulations. In SCG ’04: Proceedings of the twentieth annual symposium
on Computational geometry, pages 170–179. ACM.
Varnuska, M. e Kolingerova, I. (2004). Manifold extraction in surface reconstruction.
In Computational Science - ICCS 2004, volume 3039 of Lecture Notes in Computer
Science, pages 147–155.
163
REFERÊNCIAS BIBLIOGRÁFICAS
Ivrissimtzis, I., Jeong, W.-K., Lee, S., Lee, Y., , e Seidel, H.-P. (2004). Neural meshes:
surface reconstruction with a learning algorithm. Research Report 2004-4-005, Max-
Planck-Institut fur Informatik, Saabrucken, Germany.
Belkin, M. e Niyogi, P. (2004). Semi-supervised learning on riemannian manifolds.
Machine Learning, 56(1-3), 209–239.
De Silva, V. e Carlsson, G. (2004). Topological estimation using witness complexes.
IEEE Symposium on Point-based Graphic, pages 157–166.
Mujber, T., Szecsi, T., e Hashmi, M. (2004). Virtual reality applications in manufacturing
process simulation. Journal of Materials Processing Technology, 155â156(0), 1834 –
1838.
Wong, J. W. H. e Cartwright, H. M. (2005). Deterministic projection by growing cell
structure networks for visualization of high-dimensionality datasets. Journal of Bio-
medical Informatics, 38, 322–330.
Cheng, S.-W., Dey, T. K., e Ramos, E. A. (2005). Manifold reconstruction from point
samples. In Proceedings of the sixteenth annual ACM-SIAM symposium on Discrete
algorithms, SODA ’05, pages 1018–1027.
Seow, M.-J., Tompkins, R. C., e Asari, V. K. (2005). A new nonlinear dimensionality
reduction technique for pose and lighting invariant face recognition. In Proceedings
of the 2005 IEEE Computer Society Conference on Computer Vision and Pattern Re-
cognition - Workshops,2005 - CVPR Workshops, pages 160–167.
Boissonnat, J.-D. e Oudot, S. (2005). Provably good sampling and meshing of surfaces.
Graphical Models, 67(5), 405–451.
Dangelmaier, W., Fischer, M., Gausemeier, J., Grafe, M., Matysczok, C., e Mueck, B.
(2005). Virtual and augmented reality support for discrete manufacturing system si-
mulation. Computers in Industry, 56(4), 371 – 383.
Gao, J., Xu, W., e Geng, J. (2006). 3d shape reconstruction of teeth by shadow speckle
correlation method. Optics and Lasers in Engineering, 44(5), 455 – 465.
Fisher, M., Springborn, B., Bobenko, A. I., e Schroder, P. (2006). An algorithm for the
construction of intrinsic delaunay triangulations with applications to digital geometry
processing. In ACM SIGGRAPH 2006 Courses, pages 69–74.
164
REFERÊNCIAS BIBLIOGRÁFICAS
Cazals, F. e Giesen, J. (2006). Delaunay triangulation based surface reconstruction:
Ideas and algorithms. In Effective Computational Geometry for Curves and Surfaces,
pages 231–273. Springer.
Kühn, W. (2006). Digital factory: simulation enhancing the product and production
engineering process. In Proceedings of the 38th conference on Winter simulation,
pages 1899–1906.
Kazhdan, M., Bolitho, M., e Hoppe, H. (2006). Poisson surface reconstruction. In
Proceedings of the fourth Eurographics symposium on Geometry processing, pages
61–70.
Dey, T. K. e Goswami, S. (2006). Provable surface reconstruction from noisy samples.
Computational Geometry, 35(1-2), 124–141.
Boissonnat, J.-D. e Oudot, S. (2006). Provably good sampling and meshing of lipschitz
surfaces. In Proceedings of the twenty-second annual symposium on Computational
geometry, SCG ’06, pages 337–346, New York, NY, USA. ACM.
Bobenko, A. I. e Springborn, B. (2007). A discrete laplace-beltrami operator for simpli-
cial surfaces. Discrete and Computational Geometry, 38(4), 740–756.
Attali, D., Edelsbrunner, H., e Mileyko, Y. (2007). Weak witnesses for delaunay trian-
gulations of submanifolds. In Proceedings of the 2007 ACM symposium on Solid and
physical modeling, pages 143–150.
Brito, A., Doria, A., de Melo, J., e Goncalves, L. (2008). An adaptive learning appro-
ach for 3d surface reconstruction from point clouds. IEEE Transactions on Neural
Networks, 19(6), 1130–1140.
Cignoni, P., Corsini, M., e Ranzuglia, G. (2008). Meshlab: an open-source 3d mesh
processing system. ERCIM News, (73), 45–46.
Guibas, L. J. e Oudot, S. Y. (2008). Reconstruction using witness complexes. Discrete
and Computational Geometry, 40(3), 325–356.
Cignoni, P. e Scopigno, R. (2008). Sampled 3d models for CH applications: A viable
and enabling new medium or just a technological exercise? Journal on Computing
and Cultural Heritage, 1(1), 2:1–2:23.
165
REFERÊNCIAS BIBLIOGRÁFICAS
Olszewski, R., Villamil, M. B., Trevisan, D. G., Nedel, L. P., Freitas, C. M., Reychler,
H., e Macq, B. (2008). Towards an integrated system for planning and assisting ma-
xillofacial orthognathic surgery. Computer Methods and Programs in Biomedicine,
91(1), 13 – 21.
De Silva, V. (2008). A weak characterisation of the delaunay triangulation. Geometriae
Dedicata, 135, 39–64.
Remondino, F., Girardi, S., Rizzi, A., e Gonzo, L. (2009). 3d modeling of complex
and detailed cultural heritage using multi-resolution data. Journal on Computing and
Cultural Heritage, 2(1), 2:1–2:20.
Boissonnat, J.-D., Guibas, L. J., e Oudot, S. Y. (2009). Manifold reconstruction in
arbitrary dimensions using witness complexes. Discrete & Computional Geometry,
42(1), 37–70.
Corona, F., Liitiäinen, E., Lendasse, A., Sassu, L., Melis, S., e Baratti, R. (2009). A som-
based approach to estimating product properties from spectroscopic measurements.
Neurocomputing, 73, 71–79.
Rego, R., Bassani, H., Filgueiras, D., e Araujo, A. (2009). Surface reconstruction
method based on a growing self-organizing map. In Proceedings of the 19th Inter-
national Conference on Artificial Neural Networks, volume 5768, pages 515–524.
Dyer, R., Zhang, H., e Möller, T. (2009). A survey of Delaunay structures for surface
representation. Technical Report TR 2009-01, SFU_CS_School.
Mole, V. L. D. e Araújo, A. F. R. (2010). Growing self-organizing surface map: Learning
a surface topology from a point cloud. Neural Computation, 22(3), 689–729.
Rego, R. L. M. E., Araujo, A. F. R., e Lima Neto, F. B. (2010). Growing self-
reconstruction maps. IEEE Transactions on Neural Networks, 21(2), 211–223.
Boissonnat, J.-D. e Ghosh, A. (2010). Manifold reconstruction using tangential delau-
nay complexes. In Proceedings of the ACM Symposium on Computational geometry,
pages 324–333.
Dyer, R. (2010). Self-Delaunay meshes for surfaces. Ph.D. thesis, Simon Fraser Univer-
sity, Burnaby, Canada.
166
REFERÊNCIAS BIBLIOGRÁFICAS
Annuth, H. e Bohn, C.-A. (2010). Smart growing cells. In Proceedings of the Inter-
national Conference on Fuzzy Computation and International Conference on Neural
Computation, pages 227–237.
do Rego, R. e Araújo, A. (2010). A surface reconstruction method based on self-
organizing maps and intrinsic delaunay triangulation. In The International Joint Con-
ference on Neural Networks, pages 1–8.
Langer, H., Falsaperla, S., Messina, A., Spampinato, S., e Behncke, B. (2011). Detec-
ting imminent eruptive activity at Mt Etna, Italy, in 2007-2008 through pattern clas-
sification of volcanic tremor data. Journal of Volcanology and Geothermal Research,
200(1-2), 1–17.
Boissonnat, J.-D., Dyer, R. D., Ghosh, A., e Oudot, S. (2011). Equating the witness
and restricted delaunay complexes. Technical Report CGL-TR-24, Computational
Geometric Learning Project.
Rego, R. L. M. E., Ferreira, P. H. M., e Araujo, A. F. R. (2011). Reconstructing anato-
mical structures with growing self-reconstruction maps. In IEEE International Confe-
rence on Systems, Man, and Cybernetics, pages 2976–2981.
Geng, Y., Yang, P., Xu, X., e Chen, L. (2012). Design and simulation of active transfe-
moral prosthesis. In Control and Decision Conference (CCDC), 2012 24th Chinese,
pages 3724 –3728.
Vierjahn, T., Lorenz, G., Mostafawy, S., e Hinrichs, K. (2012). Growing cell structures
learning a progressive mesh during surface reconstruction - a top-down approach. In
Eurographics (Short Papers), pages 29–32.
Möbius, J. e Kobbelt, L. (2012). Openflipper: an open source geometry processing and
rendering framework. In Proceedings of the 7th international conference on Curves
and Surfaces, pages 488–500.
Araujo, A. F. R. e Rego, R. L. M. E. (2013). Self-organizing maps with a time varying
structure. ACM Computing surveys, Aceito para ser publicado.
167
Top Related