Milena Menezes Adao~

Click here to load reader

  • date post

    31-Jul-2022
  • Category

    Documents

  • view

    2
  • download

    0

Embed Size (px)

Transcript of Milena Menezes Adao~

Programa de Pos-Graduacao em Informatica
Milena Menezes Adao
Belo Horizonte
Dissertacao apresentada ao Programa de Pos-Graduacao em Informatica da Pontifcia Universidade Catolica de Minas Gerais, como requisito parcial para obtencao do ttulo de Mestre em Informatica.
Orientador: Prof. Dr. Zenilton Kleber Goncalves do Patrocnio Junior
Belo Horizonte
Elaborada pela Biblioteca da Pontifícia Universidade Católica de Minas Gerais
Adão, Milena Menezes
A221a Avaliação de aprendizado de máquina aplicado ao realinhamento de
hierarquias para segmentação de imagens / Milena Menezes Adão. Belo
Horizonte, 2019.
Dissertação (Mestrado) – Pontifícia Universidade Católica de Minas Gerais.
Programa de Pós-Graduação em Informática
1. Processamento de imagens - Técnicas digitais. 2. Estruturas de dados
(Computação). 3. Teoria dos grafos. 4. Smartphones - Tecnologia apropriada.
5. Redes neurais (Computação). I. Patrocínio Júnior, Zenilton Kleber Gonçalves
do. II. Pontifícia Universidade Católica de Minas Gerais. Programa de Pós-
Graduação em Informática. III. Título.
CDU: 681.3.093
Belo Horizonte, 30 de maio de 2019.
Aos meus pais, Valeria e Joaquim, por
todo amor e por tudo que me ensinaram.
AGRADECIMENTOS
Agradeco primeiramente a Deus, que em sua infinita sabedoria colocou pessoas tao
especiais em minha vida. A fe no Senhor, sem duvidas, me ajudou a lutar ate o fim.
Meus agradecimentos aos meus pais, Joaquim e Valeria, pelo amor, dedicacao,
pelos valores que me ensinaram e por tudo que sempre fizeram por mim.
Agradeco a minha irma Ludmila, pela amizade, carinho, por todo incentivo e apoio
constantes.
A minha sobrinha, Maria Julia, que nasceu durante o desenvolvimento deste
trabalho e me proporcionou, ainda mais, entusiasmo e amor.
Ao meu marido Farney, pelo companheirismo, pelo carinho, e por ter se esforcado
tanto, quando precisei me dedicar somente aos estudos.
Agradeco ao Zenilton pelas orientacoes, pela paciencia e por ser uma inspiracao de
profissional.
Meus agradecimentos a minha tia Walquria, por sempre me incentivar nos estudos.
As minhas primas Laila e Lorena, e a minha avo Neuza, por estarem sempre
presentes.
A todos os professores do programa de pos graduacao pelos ensinamentos, em
especial ao professor Slvio, que sempre esteve disposto a ajudar.
A todos os colegas do programa de pos graduacao, manifesto aqui minha gratidao
eterna por todo apoio.
A todos os meus amigos e familiares que torceram por mim, meus sinceiros
agradecimentos!
ainda nao foram terminadas - mas que elas
vao sempre mudando. Afinam ou desafinam,
verdade maior. E o que a vida me ensinou..”
Guimaraes Rosa
RESUMO
Devido a popularizacao dos smartfones, que permitem a captura de imagens, e a
disseminacao das redes sociais, que permitem o compartilhamento de multimdias, uma
quantidade significativa de imagens e gerada e disponibilizada em bases de dados todos
os dias. Portanto, existe a necessidade de processar imagens em grande quantidade de
maneira eficiente e eficaz. A segmentacao de imagens e uma das tecnicas fundamentais
para o processamento e analise de conteudo visual. Atualmente, metodos de segmentacao
hierarquica de imagens vem atraindo a atencao da comunidade cientifica de processamento
digital de imagens. Estes metodos retornam um conjunto de segmentacoes de imagens
com diferentes nveis de detalhes, de modo que os nveis pouco detalhados podem ser
produzidos a partir da fusao entre as regioes de nveis mais detalhados. No entanto,
os objetos podem ser localizados em diferentes nveis hierarquicos devido as diferencas
de tamanho ou as distintas distancias da camera. Na literatura, muitos trabalhos vem
sendo desenvolvidos para melhorar os resultados finais dos metodos de segmentacao
hierarquica de imagens. Uma solucao possvel e realinhar a hierarquia de modo que
cada regiao que contem um objeto (ou suas partes) esteja no mesmo nvel. Neste
trabalho, exploramos o uso de floresta aleatoria e redes neurais artificiais como modelos de
regressores para prever valores de score de regioes pertencentes a uma hierarquia, os quais
sao utilizadas para realinha-la. A presenta dissertacao objetivou responder a seguinte
questao: qual e o impacto gerados nos resultados de segmentacao hierarquica apos o
processo de realinhamento de hierarquias ao treinar florestas aleatorias e redes nerais com
diferentes configuracoes e com diferentes descritores de regioes? Alem disso, foi proposto
nessa dissertacao um novo calculo de score. A partir de resultados experimentais foi
possvel concluir que a utilizacao de diferentes abordagens de aprendizado de maquina com
diferentes arquiteturas e diferentes descritores influenciam na qualidade dos treinamentos.
Alem disso, percebeu-se que a utilizacao do realinhamento de hierarquias pode melhorar
os resultados finais da segmentacao de imagens. Analisando as duas abordagens de
aprendizado de maquinas foi possvel perceber que as florestas aleatorias apresentam
resultados mais estaveis que as redes neurais. Porem, o melhor resultado foi alcancado
quando se utilizou rede neural artificial. Ao observar que no treinamento as regioes de
algumas imagens foram preditas com um erro absoluto relativamente maior que os demais,
uma analise detalhada foi feita nessas imagens, o que acarretou em uma proposta de
alteracao no calculo de score para a abordagem de realinhamento de hierarquias e uma
melhoria de 39,5% no MSE.
Palavras-chave: Segmentacao hierarquica de imagens. Aprendizado de maquina.
ABSTRACT
Due to the popularity of smartphones, which enable the capture of images, and
the dissemination of social networks that allow the sharing of multimedia, a significant
amount of images are generated and made available in databases every day. Given this,
there is a need to process large quantities of images efficiently and effectively. Image
segmentation is one of the fundamental techniques for processing and analyzing visual
content. Currently, hierarchical image segmentation methods have attracted the attention
of the scientific community of digital image processing. These methods return a set of
image segmentations with different levels of detail, so that poorly detailed levels can be
produced by merging between regions at more detailed levels. However, objects can be
located at different hierarchical levels due to differences in size or different distances of
the camera. In the literature, many works have been developed to improve the final
results of hierarchical image segmentation methods. One possible solution is to realign
the hierarchy so that each region containing an object (or its parts) is at the same level. In
this work, we explore the use of random forest and artificial neural networks as regressor
models to predict score values for regions belonging to a hierarchy of partitions, which are
used to realign it. The present dissertation aimed to answer the following question: what
is the impact generated in the results of hierarchical segmentation after the process of
realigning hierarchies when training random forests and nets with different configurations
and with different region descriptors? Three experiments were performed to answer this
question. In addition, a new calculation of score was proposed in this dissertation. From
the experimental results it was possible to conclude that the use of different machine
learning approaches with different configurations and different descriptors influences the
quality of training. It was also possible to observe that the use of hierarchical realignment
can improve the final results of the segmentation of images. Analyzing the two approaches
to machine learning, it was possible to perceive that the random forests present more
stable results than the neural networks, because it acted better when more trees were
used in the forests. However, the best result was achieved when using neural networks
with three layers and two neurons. When observing that in the training the regions of
some images were predicted with a relatively greater absolute error than the others, a
detailed analysis was done in these images, which entailed in a proposal of alteration in
the calculation of score of the approach of realignment of hierarchies. Based on the new
proposal, experiment 4 was carried out, which resulted in an improvement of 39.5
Keywords: Hierarchical image segmentation. Machine learning.
LISTA DE FIGURAS
FIGURA 1 – Imagem original (a) e sua segmentacao (b) . . . . . . . . . . . . . . . . . . . . . . . . 14
FIGURA 2 – Exemplo de resultado obtido de um metodo de segmentacao hierarquica
de imagem, representado por uma arvore, e suas segmentacoes em diferentes
nveis de detalhes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
FIGURA 3 – Exemplo de resultado obtido por um metodo de segmentacao
hierarquica de imagem: (a) imagem original, (b) representacao por UCM. . 15
FIGURA 4 – Exemplos de segmentacoes de uma imagem em diferentes nveis
hierarquicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
FIGURA 5 – Exemplos de segmentacoes de uma imagem em diferentes nveis
hierarquicos e a ilustracao das regioes que foram pouco segmentadas,
excessivamente segmentadas e devidamente segmentadas . . . . . . . . . . . . . . . . 18
FIGURA 6 – Ilustracao do problema e o realinhamento de hierarquias . . . . . . . . . . . . 19
FIGURA 7 – Imagem convertida para representacao em um modelo de coordenadas 23
FIGURA 8 – Exemplo da relacao de vizinhanca 4-vizinhos e 8-vizinhos . . . . . . . . . . . 25
FIGURA 9 – Exemplo da relacao de conectividade entre pixels de uma imagem . . . . 26
FIGURA 10 – Exemplo de Componentes Conexos em uma Imagem . . . . . . . . . . . . . . 27
FIGURA 11 – Exemplo de imagem (a) e a representacao da sua regiao (b), e da
borda da regiao (c) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
FIGURA 12 – Exemplos de grafo (a) e dgrafo (b) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
FIGURA 13 – Grafo (a) e um exemplo de subgrafo relacionado a ele(b) . . . . . . . . . . 30
FIGURA 14 – Exemplo de mascara para deteccao de ponto . . . . . . . . . . . . . . . . . . . . . 33
FIGURA 15 – Mascara para deteccao de bordas horizontais (a), Mascara para
deteccao de retas verticais (b), Mascara para deteccao de retas diagonais
(c e d) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
FIGURA 16 – Gradiente em borda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
FIGURA 17 – Grafo (a) e sua arvore geradora mnima (b) . . . . . . . . . . . . . . . . . . . . . 38
FIGURA 18 – Ilustracao da avaliacao de similaridade entre os pixels . . . . . . . . . . . . . 39
FIGURA 19 – Exemplo do resultado do processo de segmentacao com estrategia
hierarquica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
FIGURA 20 – Exemplo de uma hierarquia de zonas quasi-flat . . . . . . . . . . . . . . . . . . . 43
FIGURA 21 – Exemplo de matriz de confusao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
FIGURA 22 – Exemplo de arvore de decisao que determina se uma pessoa deve ir a
praia ou nao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
FIGURA 24 – Exemplos de funcoes de ativacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
FIGURA 25 – Esquema basico de em MLP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
FIGURA 26 – Metodologia da abordagem de realinhamento de hierarquias . . . . . . . . 57
FIGURA 27 – Exemplo de imagem, ground-truth de segmentacao e ground-truth de
borda da base de dados BSDS500 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
FIGURA 28 – Analise dos regressores RN E RF em relacao ao resultado esperado e
o resultado predito . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
FIGURA 29 – Analise dos regressores RN E RF em relacao ao resultado esperado e
o resultado predito . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
FIGURA 30 – Exemplos de resultados antes e depois do realinhamento com as
segmentacoes do valor de escala igual a 0,5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
FIGURA 31 – Exemplo de segmentacao que obteve alta taxa de erro . . . . . . . . . . . . . 77
FIGURA 32 – Diferentes ground-truths referentes a imagem 31(b) . . . . . . . . . . . . . . . 78
FIGURA 33 – Exemplos de resultados antes e depois do realinhamento com as
segmentacoes do valor de escala igual a 0,5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
LISTA DE TABELAS
TABELA 1 – Media dos resultados antes e depois da aplicacao do metodo de
realinhamento de hierarquias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
TABELA 2 – Variacoes das configuracoes dos regressores e das caractersticas
extradas utilizadas nos treinamentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
TABELA 3 – MSE medio dos resultados obtidos das predicoes realizadas com
florestas aleatorias e redes neurais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
TABELA 4 – Resultados do tempo medio de execucao dos treinamentos das florestas
aleatorias e redes neurais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
TABELA 5 – Resultados do tempo medio de execucao da predicao com florestas
aleatorias e redes neurais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
TABELA 6 – Variacoes das configuracoes dos regressores e das caractersticas
extradas utilizadas nos treinamentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
TABELA 7 – Media dos resultados antes e depois da aplicacao do metodo de
realinhamento de hierarquias com as segmentacoes do metodo HGB . . . . . . 74
TABELA 8 – Media dos resultados antes e depois da aplicacao do metodo de
realinhamento de hierarquias levando-se em consideracao os ground-truths
realizados por diferentes humanos para cada imagem . . . . . . . . . . . . . . . . . . 78
TABELA 9 – Medidas de segmentacao para diferentes estrategias de avaliacao apos
o processo de realinhamento usando Scoreki . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
LISTA DE ABREVIATURAS E SIGLAS
UCM – Ultrametric Countorn Map
SUMARIO
2 REFERENCIAL TEORICO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.1 Imagem Digital . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.1.1.1 Vizinhanca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.1.1.3 Componentes Conexos, Regioes e Bordas . . . . . . . . . . . . . . . . . . . . 26
2.2 Grafo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.2.1.2 Grafo conexo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.2.2.1 Corte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.4 Segmentacao de Imagens Baseada em Deteccao de Descontinuidade 32
2.4.1 Deteccao de Ponto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.4.2 Deteccao de Linha ou Reta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.4.3 Deteccao de Borda ou contorno . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.4.3.1 Operadores de Gradiente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.4.4 Metodo Pb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.5.1 Metodo GB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.6.1 Metodo HGB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.6.2 Metodo gPb-owt-ucm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.7.1 Representacao por arvore de decisao . . . . . . . . . . . . . . . . . . . . . . . 46
2.8 Florestas aleatorias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3 TRABALHOS RELACIONADOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.2 Avaliacao de Segmentacao Hierarquica de imagens . . . . . . . . . . . . . . 55
4 AVALIACAO DE APRENDIZADO DE MAQUINA APLICADO AO REALINHAMENTO DE HIERARQUIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.1 Etapa de Treinamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.1.1 Selecao da base de dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.1.2 Segmentacao hierarquica de imagens . . . . . . . . . . . . . . . . . . . . . . . 57
4.1.3 Descritores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.1.3.2 Calculo das Rotulagens (Scores) . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.1.4 Treinamento do Regressor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
4.2 Etapa de Teste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
4.2.1 Predicao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
4.3 Realinhamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
5.1 Ambiente de teste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.2 Base de dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.3 Metricas de avaliacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.3.1 Metricas de avaliacao da segmentacao . . . . . . . . . . . . . . . . . . . . . 64
5.3.2 Metrica de avaliacao dos regressores . . . . . . . . . . . . . . . . . . . . . . . 66
5.4 Organizacao dos Experimentos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
5.5 Resultados do Experimento 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
5.6 Resultados do Experimento 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
5.7 Resultados do Experimento 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
5.8 Resultados do Experimento 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
6 CONCLUSOES E TRABALHOS FUTUROS . . . . . . . . . . . . . . . . . . . . . . . . . 83
REFERENCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
1 INTRODUCAO
Segundo Pedrini e Schwartz (2007), o constante avanco das tecnologias tem
possibilitado recursos computacionais cada vez mais poderosos para a manipulacao de
imagens, consequentemente, esta circunstancia contribui para a evolucao da area de
processamento e analise de imagens. Nos ultimos anos, houve um aumento significativo
de imagens digitais armazenadas e disponibilizadas em bases de dados. Esse crescimento
pode ser observado pela popularizacao dos smartphones, uma vez que essa tecnologia
facilita a captura de imagens. O estudo Google Consumer Barometer 1 realizado no ano
de 2017, mostrou que em 2012, 14% da populacao brasileira possua smartphones, ja em
2017, o numero atingiu 67% da populacao. O estudo ainda comprovou que 70% desses
usuarios utilizavam os smartphones, pelo menos uma vez por semana, para se conectarem
as redes sociais. Essa disseminacao das redes sociais tambem pode ser vista como
uma contribuicao para o aumento da quantidade de imagens digitas, pois possibilitam
o compartilhamento de dados. Segundo estatsticas do Instagram2 (rede social voltada
para o compartilhamento de fotos e vdeos), entre os anos de 2010 e 2011, 14 milhoes
de usuarios foram registrados na plataforma e compartilharam cerca de 400 milhoes de
imagens. Em fevereiro de 2015, a rede social contava com mais de 300 milhoes de contas
registradas e 70 milhoes de novas imagens eram publicadas diariamente. Em fevereiro de
2019, estimou-se que 500 milhoes de usuarios acessaram a plataforma todos os dias. Sendo
assim, processar imagens em grande quantidade, de maneira eficiente e eficaz, se tornou
um dos desafios para a comunidade cientfica de processamento e digital de imagens.
A literatura mostra que as tecnicas de processamento digital de imagens sao
aplicadas em diversas areas do conhecimento, o que acarreta avancos para a ciencia,
para a industria e para a sociedade. Alguns dos exemplos de areas de aplicacao citados
por Pedrini e Schwartz (2007) foram a medicina, que recorre ao processamento digital de
imagens para auxiliar nos diagnosticos dos pacientes por meio de analises e interpretacoes
das imagens obtidas de exames, como: raio-X, tomografia, ultra-sonografia e ressonancia
magnetica; a area militar, que faz uso das tecnicas de processamento e analise de
imagens para, por exemplo, rastrear alvos para lancamento de msseis; e a localizacao e
interpretacao de placas de veculos para controle de pedagios, reconhecimento de veculos
irregulares e medicao do fluxo de transito. Para Gonzalez e Woods (2001), as areas de
aplicacao do processamento digital de imagens sao muito variadas e quase nao ha area de
atuacao tecnica que nao seja impactada pelo mesmo.
Pedrini e Schwartz (2007) afirmaram que um sistema de processamento digital de
imagens e constitudo por um conjunto de etapas. Para os autores, a etapa de segmentacao
1https://www.consumerbarometer.com/en/trending/ 2https://instagram-press.com/
14
e um requisito fundamental para que as informacoes de um sistema de analise de imagens
sejam confiaveis. Afinal, como os mesmos definiram, a segmentacao realiza a extracao e
identificacao da area de interesse existente em uma imagem. Ou ainda, como apresentaram
Gonzalez e Woods (2001), a segmentacao e responsavel pela subdivisao de uma imagem
em suas regioes ou objetos constituintes. E por fim, como esclarecem Pratti (2001), a
segmentacao de uma imagem implica na divisao ou separacao da imagem em regioes de
atributo similar, ressaltando que esta etapa apenas subdivide uma imagem, o que nao
envolve qualquer tipo de reconhecimento ou interpretacao. Para melhor abstracao deste
conceito, a Figura 1 ilustra uma imagem segmentada pelo metodo HGB de Guimaraes et
al. (2017) , de modo que, 1(b) representa o resultado de segmentacao da imagem 1(a).
Assim, e possvel perceber que cada parte da imagem original foi devidamente dividida e
apresentada com uma cor diferente.
Figura 1 – Imagem original (a) e sua segmentacao (b)
(a) (b)
Fonte: Elaborada pela autora
O uso de metodos hierarquicos, segundo Souza et al. (2014), Belo et al. (2016),
Rodrigues et al. (2017), ajudaram a melhorar os resultados para diferentes tarefas. Por
sua vez, a segmentacao hierarquica de imagens e tambem bastante utilizada na literatura.
Guimaraes et al. (2017) definiram a segmentacao hierarquica como sendo um conjunto
de segmentacoes em diferentes nveis de detalhe, de modo que as segmentacoes em nveis
de detalhe mais grosseiros podem ser produzidas a partir de simples fusoes de regioes
das segmentacoes em nveis de detalhe mais refinados. Uma maneira simples de entender
este conceito esta disposto na Figura 2, a qual faz uma analogia do resultado de uma
segmentacao hierarquica representada por uma arvore, com o mapa do Brasil, que sao
as imagens segmentadas resultantes dos cortes na horizontal realizados em cada nvel da
hierarquia. Observa-se que o primeiro nvel hierarquico foi composto por apenas uma
regiao, que representa o Brasil. Ja no segundo nvel hierarquico a regiao anterior foi
apresentada com mais detalhes, entao foi possvel visualizar as 5 macrorregioes brasileiras.
Por sua vez, no terceiro nvel foi possvel visualizar os detalhes de cada macrorregioes
brasileira, que sao os estados.
15
Figura 2 – Exemplo de resultado obtido de um metodo de segmentacao hierarquica de imagem, representado por uma arvore, e suas segmentacoes em diferentes nveis de detalhes
Fonte: Elaborada pela autora
Uma das maneiras de visualizar o resultado de uma segmentacao hierarquica e
realizando cortes na hierarquia, como exemplificado na Figura 2, ou ainda, utilizando
metodos mais sofisticados, como os mapas de contorno ultrametrico (ARBELAEZ, 2006) e
os mapas de saliencia (COUSTY et al., 2018), os quais permitem uma boa visibilidade dos
resultados englobando todos os nveis hierarquicos. Nestes ultimos tipos de representacoes,
as regioes da segmentacao sao delimitadas por bordas codificadas em escalas de cinza.
Assim, a intensidade do cinza representa em qual nvel da hierarquia a respectiva borda
(des)aparece. A Figura 3 exemplifica um resultado representados por um mapa de
contorno ultrametrico (Ultrametric Countorn Map (UCM)).
Figura 3 – Exemplo de resultado obtido por um metodo de segmentacao hierarquica de imagem: (a) imagem original, (b) representacao por UCM.
(a) (b)
16
Na literatura, muito tem sido feito com intuito de melhorar as segmentacoes
das imagens. Ao mesmo tempo, o aprendizado de maquina vem sendo empregado em
diferentes tarefas com intuito de solucionar problemas bastante complexos. O trabalho de
Chen et al. (2016b), por exemplo, deu incio a novas investigacoes a respeito de metodos
hierarquicos, dado que os autores propuseram a utilizacao de abordagens de aprendizado
de maquina para melhorar as hierarquias resultantes dos metodos de segmentacao.
A literatura sobre todas as etapas do processamento digital de imagens e bastante
ampla e uma revisao completa esta alem do escopo proposto nesta dissertacao. Portanto,
o conteudo deste trabalho esta focado na segmentacao hierarquica de imagens. Neste
Captulo serao apresentadas a motivacao para a realizacao dessa pesquisa (ver Secao 1.1),
a definicao do problema em questao (ver Secao 1.2), os objetivos 1.3) e a justificativa
do trabalho 1.4) . Por fim, serao apresentadas as suas contribuicoes na Secao 1.5 e a
organizacao da dissertacao na Secao 1.6.
1.1 Motivacao
Zhang e Yang (2008) definiriam o problema de segmentacao de imagens como o
processo de dividir um conjunto de pixels de uma imagem em grupos distintos, de modo
que cada um deles possa representar algum objeto (ou parte do objeto) presentes na
imagem. Entao, Martin et al. (2001) forneceram a um grupo de pessoas o conceito citado
anteriormente para que os mesmos pudessem realizar as anotacoes (ground-truth) em
uma base de imagens. Os autores observam que o problema de segmentacao estava bem
definido, visto que os humanos conseguiram particionar as imagens em regioes e, ainda,
conseguiram gerar regioes mais refinadas particionadas a partir de regioes iniciais. Sendo
assim, o problema de segmentacao pode ser considerado um problema multiescala.
As abordagens de segmentacao de imagens sao denominadas, simplesmente, como
segmentacao, quando produzem um unico particionamento da imagem (SHI; MALIK, 2000;
COMANICIU; MEER, 2002; FELZENSZWALB; HUTTENLOCHER, 2004). Entretanto, para
capturar a natureza multiescala das regioes e necessario que o processo de segmentacao
retorne multiplas particoes que apresentam mais detalhes de cada regiao, de modo que
as particoes se encontrem em diferentes nveis (ou escalas). A segmentacao hierarquica,
por sua vez, produz uma unica estrutura multiescala, a qual pode ser denominada como
hierarquia de particao (SALEMBIER; GARRIDO, 2000; ARBELAEZ et al., 2011; GUIMARAES;
PATROCINIO JR, 2013; GUIMARAES et al., 2017; PONT-TUSET et al., 2017). As estruturas
hierarquicas sao aplicadas com sucesso em diferentes problemas, tais como: segmentacao
semantica (LEMPITSKY; VEDALDI; ZISSERMAN, 2011; FARABET et al., 2013), deteccao de
objetos salientes (ZOU; KOMODAKIS, 2015), geracao de propostas de objetos (PONT-TUSET
et al., 2017), segmentacao de vdeo (XU; WHITT; CORSO, 2013; SOUZA et al., 2013, 2014,
17
2015; VARAS; ALFARO; MARQUES, 2015; SOUZA et al., 2016), sumarizacao de vdeos (BELO
et al., 2014, 2016), cossegmentacao de vdeos (RODRIGUES et al., 2017), entre outros.
Pesquisas recentes apontaram que o reconhecimento de escalas ajudam a melhorar
o resultado final em muitas tarefas de visao computacional (CHEN et al., 2016b; JIE et al.,
2016; HAO et al., 2017; LI et al., 2018). Sendo assim, o processo de se obter a melhor
segmentacao possvel de uma hierarquia de particoes e de fundamental importancia.
Dessa forma, este trabalho tem como principal motivacao a necessidade de se obter uma
segmentacao hierarquica na qual uma unica limiarizacao se torna capaz de extrair (a
maioria) segmentos correspondendo aos objetos presentes na imagem.
1.2 Problema
As hierarquias sao normalmente suscetveis a poucas segmentacoes, em nveis
de detalhes mais grosseiros e a excessivas segmentacoes em nveis mais refinados.
Consequentemente, objetos (ou mesmo partes do mesmo objeto) podem aparecer em
nveis hierarquicos diferentes. Um exemplo deste problema esta exposto na Figura 4,
de modo que, a imagem que representa o Ground-Truth e a segmentacao desejada, K representa o valor do nvel hierarquico no qual houve um corte horizontal, e as demais
imagens representam as segmentacoes obtidas pelos cortes referentes a cada um dos K valores.
Figura 4 – Exemplos de segmentacoes de uma imagem em diferentes nveis hierarquicos
Ground-Truth
Fonte: Elaborada pela autora
A Figura 5 ilustra com mais detalhes quais regioes das segmentacoes representadas
nas Figuras 4(a), 4(b) e 4(c) foram pouco segmentadas, excessivamente segmentadas e
devidamente segmentadas em relacao ao Ground-Truth ilustrado na Fgura 4.
18
Figura 5 – Exemplos de segmentacoes de uma imagem em diferentes nveis hierarquicos e a ilustracao das regioes que foram pouco segmentadas, excessivamente segmentadas e devidamente segmentadas
(a)Ground-Truth K=0.1 (c)Pouco (d)Excessivo (e)Devidamente
(a)Ground-Truth K=0.2 (c)Pouco (d)Excessivo (e)Devidamente
(a)Ground-Truth K=0.3 (c)Pouco (d)Excessivo (e)Devidamente
Fonte: Elaborada pela autora
Na tentativa de lidar com o problema dos objetos e suas partes aparecerem
em nveis hierarquicos diferentes, Guiges, Cocquerez e Men (2006), Cousty e Najman
(2014) propuseram explorar o uso de cortes nao horizontais nas hierarquias. Uma outra
alternativa apresentada por Xu, Whitt e Corso (2013) foi nivelar a hierarquia em uma
segmentacao unica. E, finalmente, Chen et al. (2016b) propuseram modificar o resultado
final de um algoritmo hierarquico. A ultima ideia apresentada consiste em modificar
as escalas de observacao, ou seja, modificar os nveis hierarquicos em que as regioes se
encontram, para que (quase) todos objetos (e suas partes) possam ficar no mesmo nvel
(ou escala).
A Figura 6 exemplifica o problema citado anteriormente e ilustra uma possvel
solucao que seria o resultado desejado apos a aplicacao do metodo de realinhamento de
hierarquias proposto por Chen et al. (2016b).
Chen et al. (2016b) propuseram o metodo de realinhamento de hierarquias que
consiste em utilizar o aprendizado de maquina para prever se cada regiao da segmentacao
e pouco segmentada, muito segmentada ou devidamente segmentada, e entao, realinhar a
hierarquia de acordo com essas rotulagens. Esses rotulos sao valores definidos no intervalo
[-1,1], sen do assim, se o rotulo for um valor negativo, significa que a regiao foi pouco
19
Figura 6 – Ilustracao do problema e o realinhamento de hierarquias
Fonte: Elaborada pela autora
segmentada, enquanto um valor positivo indica que a regiao foi muito segmentada e 0 a
regiao foi devidamente segmentada. Em seu trabalho, os autores empregaram florestas
aleatorias com 100 arvores para analisar regioes. Contudo, existe a necessidade de se
estudar e avaliar a utilizacao de diferentes metodos de aprendizagem de maquina na
melhoria dos resultados da segmentacao hierarquica de imagens, bem como, o impacto
da utilizacao de diferentes combinacoes de caractersticas que descrevem as regioes das
segmentacoes, e ainda, analisar o comportamento dos metodos de aprendizagem de
maquina com diferentes configuracoes.
1.3 Objetivos
O objetivo deste trabalho e explorar e avaliar a utilizacao de florestas aleatorias e
redes neurais como ferramentas de regressao para prever se as regioes de uma hierarquia
de particoes foram muito, pouco ou devidamente segmentadas e, posteriormente, realinhar
as hierarquias com base nessas previsoes. Sendo assim, durante o desenvolvimento deste
trabalho pretende-se responder a seguinte questao:
Questao 1. Qual e o impacto gerado nos resultados de segmentacao hierarquica apos o
processo de realinhamento das hierarquias ao treinar florestas de aleatorias e redes neurais
com diferentes configuracoes e com diferentes descritores de regioes?
Alem disso, neste trabalho tambem foi proposto um novo calculo de score, o qual
determina se as regioes de uma hierarquia sao muito, pouco ou devidamente segmentadas.
20
Treinar florestas de aleatorias e redes neurais com diferentes configuracoes e com
diferentes descritores para as regioes;
a)
Avaliar a qualidade de cada um dos treinamentos realizados;b)
Realizar a predicao para rotular se as regioes sao muito, pouco ou devidamente
segmentados;
c)
Analisar os resultados obtidos das predicoes em relacao aos resultados esperados;d)
Realizar o realinhamento das hierarquias de particoes a partir das rotulagens
preditas;
e)
Analisar e avaliar os resultados das segmentacoes hierarquicas realinhadas e
comparar com a literatura;
f)
Treinar um regressor utilizando os resultados obtidos a partir do novo calculo de
score proposto;
Avaliar a qualidade do treinamentos realizados utilizando os resultados obtidos a
partir do novo calculo de score proposto;
h)
Comparar os resultados das hierarquias realinhadas ao utilizar o calculo de score
proposto por Chen et al. (2016b) com os resultados das hierarquias realinhadas ao
utilizar o calculo de score proposto neste trabalho.
i)
1.4 Justificativa
A segmentacao de imagem e uma etapa fundamental para muitas abordagens que
utilizam as tecnicas de processamento digital. A segmentacao em sua versao hierarquica
tem sido bastante utilizada na literatura, uma vez que o problema de segmentacao
pode ser considerado um problema multiescala. Sendo assim, muitos trabalhos vem
21
sendo desenvolvidos com intuito de melhorar as hierarquias de particoes. Diante desses
trabalhos, uma interessante ideia, desenvolvido por Chen et al. (2016b) foi realinhar
resultados de segmentacoes hierarquicas utilizando florestas aleatorias com 100 arvores e
alguns descritores de regioes para predizer se as regioes sao muito, pouco ou devidamente
segmentadas e, entao, realinhar a hierarquia de acordo com estas rotulagens. Com isso,
os autores alcancaram interessantes melhorias nos resultados de segmentacao hierarquica.
Porem, o metodo foi testado em apenas um metodo de aprendizado de maquina, com
apenas uma configuracao e tambem com apenas um conjunto de descritores. Sendo assim,
surge a necessidade de se avaliar a abordagem de realinhamento em cenarios diferentes.
Por isso, alem das florestas aleatorias utilizou-se outra abordagem de aprendizado de
maquina, as redes neurais, que vem sendo cada vez mais exploradas na literatura na
tentativa de solucionar diferentes problemas, ate mesmo os mais complexos.
Na literatura, as redes neurais e as florestas aleatorias sao aplicadas com diferentes
configuracoes (quantidade de camadas e neuronios, no caso das redes neurais, e quantidade
de arvores, no caso das florestas aleatorias), portanto, nao se tem ao certo qual seria
a melhor configuracao para o problema de determinar se uma regiao e muito, pouco
ou devidamente segmentada. Entao, neste trabalho os metodos de aprendizado foram
explorados em diferentes cenarios, os quais serao mostrados adiante. Paralelamente a
isso, tambem nao se tem ao certo qual e o melhor conjunto de descritores para as regioes,
por isso, houve a necessidade de investigar o impacto ao utilizar diferentes conjuntos de
descritores de regioes no processo de aprendizado.
Resumidamente, o processo de realinhamento de hierarquias depende dos
resultados das predicoes que definem se uma regiao e muito, pouco ou devidamente
segmentada. Sendo assim, torna-se necessario avaliar a qualidade do preditor que ira
retornar esses resultados, analisar os resultados retornados pelo mesmo e, ainda, analisar
a qualidade das segmentacoes geradas apos utilizar estes mesmos resultados no processo
de realinhamento de hierarquias.
1.5 Contribuicoes
As principais contribuicoes deste trabalho sao: analise de como o processo de
realinhamento de hierarquias impacta nas segmentacao de imagens; analise da qualidade
das predicoes obtidos por redes neurais e florestas aleatorias para rotular se uma regiao e
muito, pouco, ou devidamente segmentada, bem como a analise de como elas atuam em
diferentes configuracoes e com diferentes caractersticas; analise de como a utilizacao de
diferentes conjuntos de caractersticas no treinamento podem influenciar nas segmentacoes
finais do processo de realinhamento de hierarquias;um novo calculo de score para definir a
rotulagem das regioes; analise de como a utilizacao de ground-truth realizado por diferentes
22
pessoas para uma mesma imagem no processo de treinamento podem influenciar nos
resultados finais do processo de realinhamento de hierarquias.
1.6 Organizacao da dissertacao
Essa dissertacao esta organizada da seguinte maneira: no Captulo 2 e apresentado
o referencial teorico e os trabalhos relacionados levantados por meio de uma revisao da
literatura. No Captulo 3 e descrita a metodologia utilizada para o desenvolvimento da
pesquisa. No Captulo 4 sao apresentados os experimentos e as analises dos resultados.
Por fim, no Captulo 6 sao apresentadas as conclusoes.
23
Este Captulo tem como proposito introduzir os principais conceitos e trabalhos
relacionados com a presente dissertacao.
2.1 Imagem Digital
Pedrini e Schwartz (2007) definiram uma imagem como uma funcao f(x, y), sendo
o valor fornecido pelas coordenadas espaciais (x, y) a intensidade ou o brilho da imagem
naquele determinado ponto. Neste contexto, a intensidade luminosa e o produto entre a
quantidade de luz incidente na cena (iluminancia) e a quantidade de luz refletida pelos
objetos em cena (reflectancia). Em resumo, a equacao 2.1 apresenta a definicao da funcao
f(x, y), de modo que i representa a iluminancia e r a reflectancia.
f(x, y) = i(x, y)r(x, y). (2.1)
A Figura 7 exemplifica uma imagem e sua representacao no modelo de coordenadas
espaciais, onde a coordenada (0, 0) (localizada no canto superior esquerdo da imagem)
e a origem da imagem.
Figura 7 – Imagem convertida para representacao em um modelo de coordenadas
Fonte: Elaborada pela autora
Uma imagem digital, segundo Pedrini e Schwartz (2007), pode ser obtida a partir do
processo de digitalizacao que consiste das etapas de amostragem e quantizacao. A etapa
de amostragem e responsavel por discretizar as coordenadas (x, y), do domnio da definicao
de imagem, para uma matriz de (M×N) elementos, de modo que a dimensao M da matriz
24
corresponde ao eixo x da imagem e a dimensaoN corresponde ao eixo y da mesma imagem.
Para imagens monocromaticas (em tons de cinza), a etapa de quantizacao envolve definir
um valor inteiro L de nveis de cinza para cada elemento (x, y) (ou pixel) da imagem.
Os nveis de cinza, comumente, podem ser convertidos em um valor do intervalo [0,255],
atribuindo a cor preta o valor 0 (nvel mais escuro de cinza) e a cor branca o valor 255
(nvel mais claro de cinza). Para imagens multespectrais (coloridas), a quantizacao pode
ser realizada atribuindo a cada pixel os nveis de vermelho ou red (R), verde ou green (G)
e azul ou blue (B), tendo entao tres componentes.
Torres e Falcao (2006) definem uma imagem digital I como sendo um par (DI ,~I),
de modo que:
• DI representa um conjunto finito de pixels ;
• ~I:DI 7→Rn representa uma funcao que atribui para cada pixel p em DI um vetor ~I(p) ∈ Rn (por exemplo, ~I(p) ∈ R3 quando uma cor no modelo RGB e atribuda a
um pixel).
Sendo assim, DI representa as coordenadas (x, y) amostradas, enquanto o vetor ~I,
representa a quantizacao de cada pixel p da imagem, que no exemplo em questao assume
um valor real nos nveis de R, G e B.
2.1.1 Relacionamentos basicos entre pixels
Os pixels de uma imagem digital se relacionam entre si de diferentes maneiras e em
diferentes situacoes. Nesta Secao, serao apresentados alguns dos tipos de relacionamentos
mais comuns.
2.1.1.1 Vizinhanca
Dentre os tipos de relacionamentos de vizinhanca entre os pixels de uma imagem,
presentes na literatura, dois deles serao abordados: 4-vizinhos e 8-vizinhos. Gonzalez
e Woods (2001) explicaram que na relacao 4-vizinhos, um pixel p nas coordenadas
(x, y) possui dois vizinhos horizontais e dois vizinhos verticais, os quais se localizam nas
coordenadas estabelecidas na Equacao 2.2; e, na relacao 8-vizinhos, existem outros quatro
vizinhos diagonais (ver Equacao 2.3), alem dos quatro definidas anteriormente.
(x+ 1, y), (x− 1, y), (x, y + 1), (x, y − 1). (2.2)
(x+ 1, y + 1), (x+ 1, y − 1), (x− 1, y + 1), (x− 1, y − 1). (2.3)
25
A Figura 8 exemplifica os dois tipos de vizinhancas mencionados de acordo com as
respectivas coordenadas (ver Equacoes 2.2 e 2.3).
Figura 8 – Exemplo da relacao de vizinhanca 4-vizinhos e 8-vizinhos
Fonte: Elaborada pela autora
Gonzalez e Woods (2001) ressaltaram que alguns dos pixels vizinhos podem nao existir se
(x, y) estiver localizado na borda da imagem.
2.1.1.2 Conectividade e Adjacencia
A conectividade entre pixels e um conceito fundamental que simplifica a definicao
de inumeros conceitos a respeito de imagem digital, tais como regioes e limites (GONZALEZ;
WOODS, 2001). De acordo com Pedrini e Schwartz (2007), para verificar se existe
conectividade entre dois pixels, e preciso determinar se eles sao vizinhos e se o valor
atribudo a eles satisfazem um criterio especfico de similaridade (cor, textura, nvel
de cinza e outros). Pedrini e Schwartz (2007) tambem determinaram que se existe
conectividade entre dois elementos, significando que eles sao adjacentes.
Logo, a sequencia de pixels adjacentes existentes entre o pixel p com coordenadas
(x, y) ate o pixel q com coordenadas (s, t), e definida por (GONZALEZ; WOODS, 2001) como
uma sequencia de pixels distintos com coordenadas: (x0, y0), (x1, y1), ..., (xn, yn) onde os
pixels (xi, yi) e (xi+1, yi+1) sao adjacentes, e n e o tamanho do caminho.
A Figura 9 ilustra os conceitos abordados nesta Secao, de maneira que, os pixels
destacados em vermelho, possuem a relacao de conectividade por obedecerem algum
criterio de similaridade e por serem vizinhos. Sendo assim, pode-se concluir que os
pixels referentes as coordenadas (x, y) e (x, y − 1), por exemplo, sao adjacentes. Pode-se
tambem estabelecer que o caminho entre o pixel com coordenada (x, y−1) ate o pixel com
26
coordenada (x+1, y+1) corresponde a seguinte sequencia: (x, y−1), (x, y), (x+1, y+1),
possui tamanho igual a 2.
Figura 9 – Exemplo da relacao de conectividade entre pixels de uma imagem
Fonte: Elaborada pela autora
2.1.1.3 Componentes Conexos, Regioes e Bordas
Conforme Pedrini e Schwartz (2007) abordaram, um subconjunto de pixels C de
uma imagem em que seus elementos possuem conectividade entre si e denominado como
componente conexo. Portanto, seja C um subconjunto de pixels em uma imagem, dois
pixels p e q sao ditos estarem conexos em C, se existe um caminho entre eles consistido
apenas por pixels de C (GONZALEZ; WOODS, 2001).
A Figura 10 exemplifica uma imagem com tres componentes conexos, se a condicao
de vizinhanca considerada for 4-vizinhos; ou dois componentes conexos, se a condicao de
vizinhanca considerada for 8-vizinhos.
Gonzalez e Woods (2001) definiram a regiao R de uma imagem como sendo um
componente conexo na mesma; e a borda (ou contorno) da regiaoR, como sendo o conjunto
de pixels na regiao que tem um ou mais vizinhos que nao estao em R. Em outras palavras,
segundo Pedrini e Schwartz (2007), a borda da regiao R corresponde ao conjunto de pixels
localizados no contorno de R. A Figura 11 mostra um exemplo da abstracao dos conceitos
de regiao e borda de uma imagem.
27
Fonte: Elaborada pela autora
Figura 11 – Exemplo de imagem (a) e a representacao da sua regiao (b), e da borda da regiao (c)
(a)
2.2 Grafo
Simoes-Pereira (2014), definiu um grafo G = (V,E) como um sistema constitudo
por:
28
• um conjunto V cujos elementos sao denominados vertices;
• um conjunto E de pares nao ordenados de vertices, denominados arestas, os quais
unem pares de vertices de V . Sendo assim, uma aresta (x, y) faz a ligacao entre os
vertices x e y.
E comum se usar a notacao V (G) ou E(G) ao se referir ao conjunto de vertices ou de
arestas de um grafo G.
Nicoletti e Hruschka (2013) ressaltam que para se ter um grafo o conjunto de
vertices nao pode ser vazio, porem pode existir grafo com conjunto de arestas vazio, o
qual e chamado de grafo nulo.
Simoes-Pereira (2014) apresentou um outro tipo de grafo, o dgrafo D = (V,A),
que por sua vez foi definido como um sistema semelhante ao grafo, porem neste, A e um
conjunto de arcos e nao de arestas, onde o arco (x, y) faz a ligacao entre os vertices x e
y apontando a direcao da ligacao. Para melhor entendimento destes conceitos, a Figura
12 exemplifica um grafo e um dgrafo. Vale ressaltar, que na Figura 12(a) o conjunto de
vertices V e composto pelos vertices V 1, V 2 e V 3 e o conjunto de arestas E pelos pares
[(V 1, V 2), (V 2, V 3), (V 3, V 4)]; na Figura 12(a), o conjunto de vertices V e composto pelos
vertices V 1, V 2 e V 3 e o conjunto de arcos A pelos pares [(V 1, V 2),(V 2, V 1), (V 2, V 3),
(V 3, V 4)].
(a) (b)
2.2.1 Conceitos Basicos sobre Teoria dos Grafo
Nesta Secao serao apresentados alguns conceitos basicos sobre a teoria dos grafos.
29
Nicoletti e Hruschka (2013) apresentaram alguns conceitos basicos a respeito dos
tipos de vertices e arestas em um grafo, como:
• duas ou mais arestas de G podem ser conectadas ao mesmo par de vertice x e y,
denominando-se arestas paralelas;
• vertices de G que nao sao unidos por nenhuma aresta sao denominados vertices
isolados;
• um par de vertice de G unidos por uma aresta sao chamados de vertices adjacentes
ou vizinhos;
• arestas distintas de G podem ser chamadas de adjacentes se possuem um vertice em
comum;
• o conjunto de todos os vizinhos (vertices adjacentes) de um vertice x de G e chamado
de conjunto vizinhanca de x;
• um grafo e chamado de simples se nao possui loops e nao possui arestas paralelas;
• uma aresta e e incidente a um vertice x ou um vertice x e incidente a aresta e, se x
e conectado por e.
2.2.1.2 Grafo conexo
Um grafo G = (V,E) nao vazio e chamado grafo conexo se existir um caminho
entre qualquer par de vertices de V (SIMOES-PEREIRA, 2014).
2.2.1.3 Subgrafo
Segundo Simoes-Pereira (2014), um grafo G′ = (V ′, E ′) e um subgrafo de G =
(V,E) quando V ′ ⊆ V e E ′ ⊆ E, como exemplifica a Figura 13.
2.2.1.4 Passeio, Trilha, Caminhos, Ciclo
Muitos problemas que podem ser resolvidos por meio da teoria dos grafos partem
da possibilidade de chegar em um vertice do grafo a partir de outro vertice (NICOLETTI;
HRUSCHKA, 2013).
Segundo Simoes-Pereira (2014), um passeio entre os vertices x e y de um grafo G e
uma sequencia alternada de vertice e arestas que se inicia em x e termina em y. Quando
30
Figura 13 – Grafo (a) e um exemplo de subgrafo relacionado a ele(b)
(a) (b)
Fonte: Elaborada pela autora
se trata de um passeio, pode ocorrer repeticao de vertices e arestas na sequencia, caso
exista repeticao somente de arestas entao a sequencia e denominada como trilha e, por
fim, se nao exista repeticao de vertices nem de arestas, tem-se um caminho. Um caminho
cujo vertice de origem e igual ao do vertice destino e chamado de ciclo.
2.2.2 Arvores e Arvores Geradoras
Segundo Nicoletti e Hruschka (2013), aplicacoes computacionais utilizam com
frequencia o conceito de arvores para organizar conjuntos de dados. Os autores definiram
uma arvore como sendo um grafo G = (V,E) de modo que:
• G e acclico, ou seja, nao contem ciclos;
• G e conexo;
Alem disso, G e considerado uma floresta se for acclico, independente de ser conexo ou
nao.
2.2.2.1 Corte
Seja G = (V,E) um grafo conexo e um vertice v, tal que G− v ≡ H = (V − v, E− (v, w) ∈ E | w ∈ V − v) seja desconexo. Uma aresta (x, y), e um aresta de corta em G, se
G− (x, y) ≡ H = (V,E | (x, y)) for desconexo. Uma aresta unica que faz a ligacao entre
duas partes de um grafo, de modo que se ela for removida provoca um grafo com duas
partes disjuntas, e denominada como ponte (NICOLETTI; HRUSCHKA, 2013). Portanto, se
31
uma aresta nao e uma ponte, significa que ela faz parte de um ciclo e, consequentemente,
um grafo G conexo e uma arvore se e somente se, todas as suas arestas forem pontes.
2.2.2.2 Arvores Geradoras
Um subgrafo G1 = (V1, E1) e um subgrafo gerador de G = (V,E), se G1 for
subgrafo de G, tal que V1 = V . Em outras palavras, se os grafos G1 e G possuem o mesmo
conjunto de vertices, e G1 for uma arvore, entao ele e chamado de arvore geradora. Dessa
forma, existem alguns problemas que podem ser solucionados com este conceito, tal como
encontrar em um grafo G um subgrafo que tenha todos os vertices de G com o menor
peso possvel (arvore geradora mnima) (NICOLETTI; HRUSCHKA, 2013).
2.2.2.3 Arborencia
Simoes-Pereira (2014) explicou que em uma arvore pode-se definir um vertice raiz,
de modo a obter uma arvore enraizada, o que pode ser denominada arborencia. Este
tipo de arvore pode ser aplicada em hierarquias, arvores genealogica, organogramas, entre
outros. Dessa forma, nas arvores com raiz costuma-se atribuir nveis aos vertices, sendo
a raiz o nvel zero e o nvel k e composto pelos vertices que se encontram na distancia k
da raiz.
2.3 Segmentacao de Imagens
Pratti (2001) definiu a segmentacao de uma imagem como sendo o processo que
divide ou separa a imagem em regioes de atributo similar, sendo que, esse processo nao
envolve qualquer tipo de reconhecimento ou interpretacao das regioes, apenas subdivisao
da imagem. Gonzalez e Woods (2001) destacaram que interpretar dados contidos nas
imagens digitais e considerada uma atividade complexa e, por isso, a segmentacao pode ser
considerada como um processo intermediario necessario para tornar possvel a aplicacao
da interpretacao em questao. Pedrini e Schwartz (2007) aponta que encontrar regioes que
sao homogeneas e conseguir separa-las das regioes vizinhas e uma tarefa difcil, uma vez
que os objetos de uma imagem possuem posicoes, tamanhos e formatos diferentes e, alem
disso, a dificuldade e aumentada quando se tem rudos na imagem, o que leva, muitas
vezes, uma regiao homogenea a ser dividida e regioes distintas a serem reconhecidas como
uma unica regiao.
De acordo com Pedrini e Schwartz (2007), as propriedades de imagens (ou
caractersticas), como cor, intensidade e textura podem ser utilizadas para analise das
regioes. Os metodos convencionais de segmentacao utilizam essas propriedades para
32
identificar (dis)similaridades na imagem, para entao, particiona-la. Os metodos baseados
na dissimilaridade particionam as regioes com base nas mudancas abruptas da propriedade
analisada, pois essas mudancas podem significar a presenca de borda, linhas ou pontos
isolados. Os metodos baseados em similaridade buscam agrupar os pixels da imagem de
acordo com alguma medida de similaridade existente entre eles.
Existem tres principais categorias de abordagens para segmentacao de imagens que
se baseiam nos valores de intensidade dos pixels, sao elas: deteccao de descontinuidade,
tecnica de limiarizacao e identificacao de regiao (PEDRINI; SCHWARTZ, 2007). Para
melhor compreensao deste trabalho serao abordadas: segmentacao por deteccao de
descontinuidade e segmentacao por identificacao de regioes por meio de grafos.
2.4 Segmentacao de Imagens Baseada em Deteccao de Descontinuidade
Os tipos basicos de descontinuidades em uma imagem sao pontos, retas, juncoes e
bordas. Os detectores buscam identificar essas descontinuidades, geralmente, por meio
do uso de mascaras em um processo de varredura da imagem (PEDRINI; SCHWARTZ,
2007). Gonzalez e Woods (2001) tambem afirmam que a maneira mais comum de procurar
descontinuidade se da por meio da aplicacao de mascaras sobre a imagem. Os autores
explicaram que um mascara W e uma matriz de um tamanho n × n com pesos (ou
coeficientes) associados a cada elemento. A mesma e sobreposta na imagem, de modo
que o pixel da imagem que se localiza na mesma coordenada que o elemento central dessa
sobreposicao e substitudo pelo valor M definido pela Equacao 2.4. Deste modo, o valor
M e dependente dos valores dos pixels vizinhos e dos pesos de W . Esse processo se repete
ate que todos os pixels da imagem tenham sido tenham sido sobrepostos.
M = W1 × Z1 +W2 × Z2 + ...+ n×n∑ i=1
Wi × Zi. (2.4)
A Equacao 2.4, determina como computar a soma do produto dos coeficientes da mascara
pelo valor dos pixels da imagem, sendo que Wi representa o coeficiente da mascara,
enquanto que Zi e o valor referente ao pixel da imagem que esta sobreposto pela mascara
e, levando em consideracao, que ambos estao na mesma coordenada.
Nesta Secao serao apresentados tres tipos de detectores de descontinuidades, sao
eles: deteccao de ponto, deteccao de linha e deteccao de borda.
33
2.4.1 Deteccao de Ponto
Segundo Pedrini e Schwartz (2007), a deteccao de ponto consiste em encontrar
pontos isolados em uma imagem. Deste modo, um ponto pode ser detectado, por exemplo,
ao se aplicar a mascara ilustrada na Figura 14 em uma imagem.
Figura 14 – Exemplo de mascara para deteccao de ponto
Fonte: Elaborada pela autora
|M | > T. (2.5)
Em que T representa um valor de limiar positivo e M e dado pela Equacao 2.4. Assim,
se os pixels vizinhos, sobrepostos pela mascara, possuem o mesmo valor, o resultado da
mascara sera nulo (M = 0) e isso significa que a regiao e similar; caso contrario, quando
existe uma discrepancia no valor de M , o ponto e detectado.
2.4.2 Deteccao de Linha ou Reta
Gonzalez e Woods (2001) e Pedrini e Schwartz (2007) definiram a deteccao de retas
ou linhas, como sendo responsavel por detectar retas horizontais, verticais e diagonais.
Neste caso, o ponto central da mascara pode ser uma linha reta horizontal, vertical ou
diagonal, como mostra a Figura 15.
Este tipo de detector segue a mesma logica da Equacao 2.5 para analisar se existe ou nao
uma reta.
34
Figura 15 – Mascara para deteccao de bordas horizontais (a), Mascara para deteccao de retas verticais (b), Mascara para deteccao de retas diagonais (c e d)
(a) (b)
(c) (d)
2.4.3 Deteccao de Borda ou contorno
Pedrini e Schwartz (2007) definem uma borda como sendo o limite ou a fronteira
entre duas regioes cujos pixels possuem valor de propriedade diferentes. Grande parte
das tecnicas para deteccao de borda existentes na literatura se diferem pelos operadores
locais utilizados para identificar mudanca nos valores atribudos aos pixels da imagem.
Segundo Arbelaez (2006), o problema de detectar bordas e a segmentacao, embora
sejam relacionados, nao sao identicos. Uma vez que a deteccao de bordas produz contornos
fechados e, portanto, nao necessariamente fornecerao uma particao da imagem em regioes.
Porem, sempre e possvel recuperar regioes em um detector de contorno.
A Secao 2.4.3.1 apresenta um exemplo de operador que pode ser utilizado.
2.4.3.1 Operadores de Gradiente
O vetor gradiente e um vetor que indica os locais onde existem variacoes de
caractersticas na imagem. Ressaltando que a direcao do gradiente e sempre perpendicular
35
a direcao tangente da borda como mostra a Figura 16.
Figura 16 – Gradiente em borda
Fonte: Pedrini e Schwartz (2007)
Sendo assim, Pedrini e Schwartz (2007) definiram que o vetor gradiente5f(x, y) na
posicao (x, y) em uma imagem, pode ser calculado por meio de derivadas parciais, como
mostra a Equacao 2.6, de modo que i e j correspondem, respectivamente, aos vetores
unitarios nas direcoes x e y.
5f(x, y) = ∂(x, y)
∂y j. (2.6)
Portanto, (x, y) e indicado com um ponto na borda se || 5 f(x, y)|| for maior que um
limiar T .
Segundo Pedrini e Schwartz (2007), o gradiente, por sua vez, e definido pela
magnitude do vetor 5f(x, y). Uma vez que, o mesmo indica a maior taxa de variacao de
f(x, y) por unidade de distancia da direcao 5f , como mostra a Equacao 2.7.
5||f || =
√( |∂f ∂x
∂f∂y 2. (2.7)
Um problema encontrado em empregar a formula dessa maneira, segundo Pedrini
e Schwartz (2007) e o grande tempo computacional necessario para seu calculo. Diante
disto, passou-se a aproximar o valor de magnitude por meio do valor absoluto ou valor
maximo entre os gradientes na direcao x e y, como mostra as Equacoes 2.8 e 2.9
36
∂f∂y ) . (2.9)
A mudanca de intensidade, cor, textura ou outro atributo da imagem pode ser
encontrada por meio de comparacao entre dois pixels adjacentes p e q. Sendo assim, a
presenca de uma borda vertical pode ser detectada pela diferenca horizontal entre dois
pixels e as bordas horizontais pela diferenca vertical entre p e q. Quando se percebe que
uma variacao lenta ao longo do eixo y e mais rapida ao longo do eixo x, indica a existencia
de uma borda vertical. O mesmo raciocnio se aplica para uma borda horizontal, bastando
trocar o eixo y pelo eixo x e vice-versa.
2.4.4 Metodo Pb
O metodo Pb (Probability of Boundary) desenvolvido por Martin, Fowlkes e
Malik (2004) para segmentacao de imagem objetivou analisar cada pixel da imagem
baseando-se nas descontinuidades locais em diferentes propriedades da imagem (cor, brilho
e textura), em uma serie de orientacoes. Para detectar mudancas locais de cor, textura
e brilho em um par de pixels (x, y) da imagem considera-se um crculo de raio r e o
subdivide em orientacoes θ graus. Se houver uma borda em (x, y), espera-se que os
limites dos semicrculos sejam significativamente diferentes em relacao a cor, brilho e
textura. Portanto, para cada propriedade do semicrculo (cor, brilho e textura) cria-se
um histograma e a diferenca entre eles e calculada conforme mostra a Equacao 2.10.
χ2(g, h) = 1
gi + hi (2.10)
Considerando que g e h representam uma propriedade do semicrculo g e a mesma
propriedade no semicrculo h, uma grande diferenca entre eles indica uma descontinuidade.
Com base nas diferencas entre os histogramas, um classificador e entao treinado
de acordo com o conjunto das respectivas imagens, cujas bordas foram definidas por seres
humanos. Deste modo, a funcao Pb(x, y, θ) e responsavel por predizer a probabilidade
aposteriori de uma borda ao longo da orientacao θ para um pixel (x, y).
37
2.5 Segmentacao de Imagens baseada em Grafos
Na literatura, de modo geral, existem diversos exemplos de metodos de analise de
imagens que se baseiam na teoria dos grafos e, em particular, metodos de segmentacao de
imagens.
Como foi mencionado na Secao 2.3, a maior dificuldade do processo de segmentacao
de imagens e encontrar regioes que sejam homogeneas e separa-las das regioes vizinhas.
Para auxiliar nesse processo, as propriedades de uma imagem (ou caractersticas), como
cor, intensidade e textura podem ser utilizadas para analisar regioes similares.
Um conceito muito utilizado nos metodos de segmentacao de imagens baseados em
grafos e a arvore geradora mnima (ver Secao 2.2.2.2). Zahn (1971) estudou a aplicacao
desse conceito na resolucao do problema de agrupamento em grafos, de modo a produzir
grupos de vertices utilizando metricas para calculo da (dis)similaridade entre eles. Alguns
anos depois, Morris, Lee e Constantinides (1986) utilizaram a proposta de Zahn (1971)
para segmentacao de imagens, propondo uma abordagem que usou a intensidade dos pixels
como caracterstica de analise da similaridade entre vertices para entao agrupa-los.
Segundo Zhang e Yang (2008), nos metodos de segmentacao que utilizam arvore
geradora mnima (AGM) para agrupamento, o conjunto de vertices do grafo e composto
pelos dados a serem agrupados (pixels), as arestas representam o relacionamento entre
os vertices de acordo com o relacionamento de vizinhanca escolhido (ver Secao 2.2) e o
peso associado a cada aresta representa a similaridade entre o par de vertices associados
a ela. De modo geral, quanto menor for o peso da aresta, maior sera a semelhanca entre
os vertices (pixels) em questao. Dessa maneira, o processo de segmentar uma imagem
baseando-se na teoria dos grafos se resume em particionar o grafo em subgrafos, de modo
que cada subgrafo represente uma regiao da imagem (ZHANG; YANG, 2008).
A Secao a seguir apresenta um dos metodos de segmentacao baseado em grafos
existente na literatura.
2.5.1 Metodo GB
Felzenszwalb e Huttenlocher (2004) apresentaram uma abordagem para
segmentacao de imagens coloridas por meio de grafos, denominado deravante de GB.
O intuito foi dividir o grafo em componentes, de maneira que os pixels similares ficassem
no mesmo componente do grafo e os elementos muito diferentes em outros componentes;
e, que as arestas dos pares de vertices do mesmo segmento possussem pesos relativamente
baixos, enquanto que as arestas entre vertices que estao em componentes distintos
possussem pesos relativamente altos (FELZENSZWALB; HUTTENLOCHER, 2004). Essa
38
abordagem busca agrupar pixels semelhantes em um mesmo segmento, ao mesmo tempo
que tenta separar os segmentos de outros vizinhos pelo grau de dissimilaridade entre eles.
O processo da abordagem de Felzenszwalb e Huttenlocher (2004) consistiu em,
primeiramente, gerar um grafo ponderado, nao direcionado G = (V,E) , de modo que:
• o conjunto V de vertices representa os pixels da imagem a serem segmentados;
• o conjunto E de arestas representa as conexoes entre dois pixels vizinhos,
considerando os 8 vizinhos mais proximos (ver Secao 2.3);
O peso de cada aresta e definido pela dissimilaridade entre os pixels relacionados a ela.
Para uma determinada imagem I representada por um grafo G e entao calculada
a arvore geradora mnima T (ver exemplificacao na Figura 17), na qual sao tomadas
todas as decisoes referentes ao processo de segmentacao. Uma dada segmentacao S de I,
corresponde a uma particao de V em componentes, de modo que cada um dos componentes
(ou regioes) C ∈ S correspondem a um componente conexo do grafo G′ = (V,E ′), em que
E ′ ⊆ E.
Figura 17 – Grafo (a) e sua arvore geradora mnima (b)
(a) (b)
Fonte: Elaborada pela autora
Um predicado D e definido para se analisar a dissimilaridade entre os vertices do
grafo, desse modo, e possvel validar se os vertices pertencem a mesma regiao ou nao.
Para isso, os autores utilizaram os conceitos de deteccao de borda (ver Secao 2.4.3). Esse
predicado se baseia no calculo de dissimilaridade entre os elementos ao longo do limite
entre dois componentes. Basicamente, a comparacao consiste em analisar as diferencas
entre dois componentes com as diferencas interna dos mesmos, portanto, essa abordagem
e adaptativa em relacao as caractersticas locais dos dados. Define-se a diferenca interna
de um componente C ⊆ V como sendo o maior peso de um arco na arvore geradora
mnima do componente, MST(C, E).
O particionamento e iniciado, de modo que cada regiao C seja composta por apenas
um vertice, e em cada aresta (x, y) de T , seguindo uma ordem nao decrescente de seus
39
pesos, localizam-se as regioes X e Y que contem os vertices x e y, respectivamente.
Portanto, para se verificar se as regioes X e Y serao unidas e necessario avaliar a
dissimilaridade entre elas. Para isso, primeiramente, e calculada a diferenca interna
Int(X) e Int(Y ). Essa medida significa que um componente C mantem-se conectado
quando arestas de pesos no mnimo Int(C) sao consideradas. Ja a diferenca Dif(X, Y )
entre os dois componentes X, Y ⊆ V e dada pelo peso mnimo de uma aresta que conecta
vertices pertencentes aos dois componentes. A Figura 18 ilustra como sao avaliados
Int(X) e Dif(X, Y ) para quaisquer X, Y ⊆ V .
Figura 18 – Ilustracao da avaliacao de similaridade entre os pixels
Fonte: Elaborada pela autora
Durante a comparacao entre quaisquer regioes C1 e C2 avalia-se se ha evidencias
de bordas entre elas, verificando se a diferenca Dif(C1, C2) entre os componentes e maior
que a menor diferenca interna dos componentes, Int(C1) e Int(C2). O predicado que
determina a fusao das regioes C1 e C2 e dado pela Equacao 2.11.
Fusao(C1, C2) =
falso, caso contrario; (2.11)
sendo a diferenca mnima interna MInt entre as regioes C1 e C2 definida pela
Equacao 2.12.
MInt(C1, C2) = min{Int(C1) + τ(C1); Int(C2) + τ(C2)} (2.12)
A funcao de limiar τ controla o quanto a diferenca entre duas regioes deve ser
maior do que as suas diferencas internas, para que haja evidencia de uma borda entre elas
e e definida pela Equacao 2.13.
τ(C) = k
|C| (2.13)
40
em que |C| e o tamanho da regiao C e k e um parametro constante. Uma limitacao
do metodo e que, se as regioes forem significativamente pequenas, o Int(C) nao e uma
boa medida das caractersticas locais dos pixels. Sendo assim, onde existem pequenas
regioes ha uma evidencia mais forte para a existencia de uma fronteira. Felzenszwalb
e Huttenlocher (2004) definem k como uma “escala de observacao”, de modo que um
valor de k maior provoca uma preferencia para os componentes maiores. Regioes menores
sao permitidas quando existe uma diferenca consideravelmente grande entre as regioes
vizinhas.
Portanto, o metodo GB nao produz uma segmentacao que possa ser facilmente
inferida e/ou controlada, pois a escolha de um valor para k, de modo a produzir um
resultado de segmentacao com um determinado numero de regioes, nao e uma tarefa facil.
Isto acontece porque a abordagem nao atende aos princpios da analise multiescala. Assim,
pode-se usar diferentes valores para k, sem que haja necessariamente uma relacao entre a
quantidade de regioes obtidas e o valor de k selecionado.
2.6 Segmentacao Hierarquica de Imagens
Metodos que utilizam estrategias hierarquicas sao um caso particular da
segmentacao de imagens. Atualmente, na literatura, cada vez mais trabalhos vem sendo
desenvolvidos na area, devido as suas particularidades. Segundo Guimaraes et al. (2012)
e Guimaraes e Patrocnio Jr (2013), a segmentacao hierarquica de imagens gera diversas
segmentacoes em diferentes nveis de detalhes. Alem disso, uma segmentacao com nvel
de detalhe mais baixo pode ser gerada a partir da fusao de regioes de uma segmentacao
de nveis mais detalhados (GUIMARAES et al., 2012; GUIMARAES; PATROCINIO JR, 2013).
A Figura 19 apresenta um exemplo deste processo.
As abordagens hierarquicas devem obedecer os princpios da analise multiescala
que sao os princpio da causalidade, o qual estabelece que o contorno de uma regiao em
uma escala (ou nvel de detalhe) k1 deve estar presente em qualquer outra escala k2 < k1;
e o princpio da localidade, o qual estabelece que os contornos das regioes nao devem se
alterar ou deformar quando ha uma mudanca de escala (GUIGUES; COCQUEREZ; MEN,
2006). Sendo assim, a segmentacao hierarquica consegue manter as informacoes espaciais
e de vizinhanca entre os segmentos mesmo com mudancas de escala (??GUIMARAES;
PATROCINIO JR, 2013).
Teoricamente, uma hierarquia pode ser representada por meio de uma arvore, como
visto na Secao anterior Zahn (1971) deu o incio as abordagens hierarquicas com o uso
de arvore geradora mnima. Depois disso, outros trabalhos foram sendo desenvolvidos e
aprimorando o processo. Comecando por Morris, Lee e Constantinides (1986), e depois
sendo popularizado por Felzenszwalb e Huttenlocher (2004), Nock e Nielsen (2004).
41
Figura 19 – Exemplo do resultado do processo de segmentacao com estrategia hierarquica
Fonte: Elaborada pelo autora.
Contudo, seguindo os princpios definidos por Guigues, Cocquerez e Men (2006), os
metodos baseados no agrupamento ou fusao das regioes da imagem, como o metodo GB
(FELZENSZWALB; HUTTENLOCHER, 2004), nao produzem hierarquias pois nao satisfazem
os princpios da analise multiescala (causalidade e localidade).
Guimaraes et al. (2012) e Guimaraes e Patrocnio Jr (2013) afirmaram ser possvel
modificar os parametros (metricas de distancia e modos de agrupamento) de um metodo
de segmentacao conhecido, como por exemplo o GB (FELZENSZWALB; HUTTENLOCHER,
2004) e o SRG (NOCK; NIELSEN, 2004), de modo que esse consiga gerar segmentacoes que
respeitem os princpios de hierarquia.
Em Guimaraes et al. (2012, 2017), foi proposta uma transformacao do metodo
nao-hierarquico GB em uma estrategia hierarquica, de modo que a ultima respeita os
princpios da analise multiescala. Essa modificacao foi denominada HGB e representa um
metodo eficiente para segmentacao hierarquica de imagens utilizando a mesma medida de
similaridade do metodo GB (FELZENSZWALB; HUTTENLOCHER, 2004).
2.6.1 Metodo HGB
No metodo HGB, desenvolvido por Guimaraes et al. (2012, 2017), uma imagem e
transformada em um grafo nao-direcionado G = (V,E), onde V e um conjunto finito de
vertices, que representam os pixels da imagem e as arestas E representam uma medida de
dissimilaridade entre dois pixels. Um gradiente de cor e calculado pela distancia euclidiana
no espaco de cor red, green e blue (RGB) e utilizado como caracterstica dos pixels. O
conjunto E e um subconjunto de {{x, y} ⊆ V | x 6= y} (que representa a vizinhanca de
42
8-vizinhos de cada pixel). Sendo w uma funcao que mapeia E para R+, entao w(u) e o
peso da aresta u (representando a medida de dissimilaridade entre dois pixels) e (G,w) e
um grafo ponderado nao-direcionado.
Dado um conjunto finito V , uma particao de V e definida como um conjunto P de
subconjuntos disjuntos nao-vazios de V cuja uniao e V . Todo elemento de uma particao
P e chamado de uma regiao de P . Dadas duas particoes P e P ′ de V , e dito que P ′ e um
refinamento de P , denotado por P ′ P , se qualquer regiao de P ′ e includa em uma de
P . Uma hierarquia de V e uma sequencia H = (P0, . . . , Pl) de particoes de V , de modo
que Pi−1 Pi para qualquer i ∈ {1, . . . , l}.
Sendo X um subgrafo de G e λ um inteiro nao-negativo, entao λ-nvel do grafo
de X (para w) e definido como o subgrafo wVλ (X) de X, de tal modo que wVλ (X) =
(V (X), wλ(X)) com wλ(X) = {u ∈ E(X) | w(u) ≤ λ}, V (X) e E(X) representando os
conjuntos de vertices e arestas de X, respectivamente.
De acordo com Guimaraes et al. (2017), uma hierarquia de particoes e chamada
de hierarquia de zonas quasi-flat de X para w e e definida pela Equacao 2.14.
QFZ(X,w) = C ( wVλ (X)
) e o λ-nvel de particao de X (para w) que
corresponde a particao de componentes conexas induzidas pelo λ-nvel do grafo de X
(ver Figura 20).
De acordo com Cousty et al. (2018) pode-se dizer que a hierarquia QFZ(G,w)
e o mesma que QFZ(T,w), em que T e uma arvore geradora mnima de G. Entao, a
ideia principal de Guimaraes et al. (2017) foi transformar QFZ(G,w) (ou QFZ(T,w)) em
uma outra hierarquia, e isso foi feito usando-se uma medida de dissimilaridade D entre
quaisquer regioes. Para isso, uma nova funcao de peso f e gerada para se ter a nova
hierarquia QFZ(T, f).
Sendo assim, para cada u = {x, y} ∈ E em uma ordem nao-decrescente de w, f e
atualizado usando a Equacao 2.15,
f(u) = min { λ ∈ R+|D
([ C ( fVλ (T )
)] v
representa a componente conexa de λ-nvel do grafo de T (para f)
que contem o vertice v, e uma constante positiva suficientemente pequena, e a medida
de dissimilaridade D e definida pela Equacao 2.16,
D(C1, C2) = max{SC2(C1), SC1(C2)} (2.16)
43
Adaptado de COUSTY et al., 2018
em que C1 e C2 sao componentes conexas (ou regioes); enquanto, para quaisquer duas
regioes C1 e C2, SC2(C1) e definido pela Equacao 2.17,
SC2(C1) = [Dif(C1, C2)− Int(C1)]× |C1| (2.17)
em que Dif(C1, C2) e Int(C1) sao definidos de forma analoga ao realizado
por Felzenszwalb e Huttenlocher (2004).
Desse modo, a diferenca interna Int(C) de uma regiao C e o maior valor de peso
entre todas as arestas ligando dois vertices de C na arvore geradora mnima; e a diferenca
Dif(C1, C2) entre duas regioes vizinhas C1 e C2 e o menor valor de peso de aresta entre
todas as arestas que ligam C1 e C2.
Apos a criacao de QFZ(T, f), a qual pode ser representada como um dendrograma,
cortes (ou segmentacoes) podem ser realizados variando o λ-nvel para selecionar
particoes (GUIMARAES et al., 2017). Isso pode ser observado na Figura 20, em que os
vertices de mesma cor pertencem a uma mesma regiao (ou componente conexo) e, nos
itens a, b, c, d, e, ilustram-se os resultados obtidos pela variacao do λ-nvel do grafo e,
consequente, as fusoes obtidas de regioes.
2.6.2 Metodo gPb-owt-ucm
Arbelaez et al. (2011) desenvolveram um metodo denominado doravante de
gPb-owt-ucm para segmentacao hierarquica de imagem baseado em deteccao de contornos.
Os autores consideram o trabalho de Martin, Fowlkes e Malik (2004) como um ponto de
partida para o desenvolvimento do metodo gPb-owt-ucm.
44
No trabalho de Martin, Fowlkes e Malik (2004), foi proposto uma funcao Pb(x, y, θ)
para detectar provaveis bordas dos segmentos de imagem (ver Secao 2.4.4). Ja, no trabalho
de Arbelaez et al. (2011), realiza-se a segmentacao em varias etapas.
Primeiramente, uma versao multiescala de um detector Pb(x, y, θ) (mPb) e
utilizada para identificar as provaveis bordas dos segmentos da imagem. Essa funcao
e responsavel por predizer qual a probabilidade a posteriori de uma borda na orientacao θ
para um pixel (x, y), por meio da medida de diferenca local de brilho, cor e textura.
A adaptacao do metodo desenvolvida por Arbelaez et al. (2011) para o contexto de
multiescalas, consiste em executar a funcao Pb(x, y, θ) em diferentes escalas para cada
canal de brilho, cor e textura.
Uma sucessao de filtros gaussianos aplicados a imagem resultante do mPb e, depois,
um calculo dos autovetores das informacoes de orientacao dos segmentos e responsavel
por normalizar e globalizar (gPb) a segmentacao inicial da imagem. Apos este ponto, o
algoritmo ja e capaz de determinar contornos abertos na imagem em questao, que e uma
limitacao do metodo Pb.
Depois, um processo de fechamento de contornos e realizado. Para tal, utiliza-se a
abordagem oriented watershed transform (OWT). Esta etapa consiste em produzir uma
segmentacao hierarquica da imagem em nvel primario, o que possivelmente gera muitas
segmentacoes pertencendo a um mesmo segmento.
Por fim, um mapa de contorno ultrametrico (UCM) e utilizado para representar a
segmentacao final da imagem. Sendo assim, cada nvel k da arvore representa uma escala
k de segmentacao, o que facilita a recuperacao da segmentacao em qualquer um dos k
nveis da hierarquia.
2.7 Aprendizado de Maquina
O aprendizado de maquina e uma subarea da inteligencia artificial que segundo
Russell et al. (2010), surgiu para solucionar problemas difceis, uma vez que o mesmo
permite que uma colecao de pares de entrada e sada, aprendam uma funcao por meio da
extracao de padroes, capazes de prever a sada para novos dados de entrada.
Segundo Kuncheva (2014), os metodos de aprendizado de maquina sao divididos
em duas grandes categorias de aprendizado: (i) nao supervisionado; e (ii) supervisionado.
Russell et al. (2010) definiu mais uma categoria alem das outras duas, denominada
aprendizagem semisupervionada(iii). No aprendizado nao supervisionado, as amostras
nao sao rotuladas, uma tarefa comum e o agrupamento. Russell et al. (2010) citou
como exemplo de aprendizado nao supervisiondo, um taxista que pode desenvolver
gradativamente o conceito de ”transito bom”e ”transito ruim”sem nunca ter sido mostrado
45
exemplos de cada um deles por um professor. No aprendizado supervisionado, por sua vez,
todas as amostras se encontram previamente rotuladas, ou seja, aprende-se uma funcao a
partir do mapeamento da entrada para sada. Por fim, no aprendizado semisupervisionado
sao dados poucos exemplos rotulados e os demais dados nao possuem rotulos, deste modo
ao mesmo tempo que ele e supervisionado ele e nao supervisionado. Pode-se, ainda,
distinguir dois grupos de abordagens de acordo com o tipo de sada produzida: (i) metodos
de classificacao, no qual os rotulos produzidos sao discretos; e (ii) metodos de regressao
em que os resultados gerados sao contnuos.
As entradas a serem passadas pelo processo de aprendizagem sao descritas por
uma serie de caractersticas (ou atributos) que podem ser quantitativas ou qualitativas.
Segundo Fu (1982), o ramo do aprendizado de maquina que lida exclusivamente com
caractersticas qualitativas e denominado reconhecimento de padroes, ja o aprendizado
estatstico opera exclusivamente sobre dados numericos. No aprendizado estatstico, as
caractersticas de uma entrada sao organizadas em um vetor x = [x1, x2, . . . , xn]T ∈ Rn,
constituindo o espaco de caractersticas em que cada eixo corresponde a uma caracterstica
especfica. Ja caractersticas qualitativas, devem ser convertidas em quantitativas.
O conjunto de dados utilizados no processo de aprendizagem estao geralmente sob
a forma de um conjunto de dados rotulados Z = [z1, z2, . . . , zN ], zj ∈ Rn. O rotulo indica
a classe ou valor de zj que se e esperado, e e representado por yj ∈ , j = 1, . . . , N . Um
conjunto de dados pode ser organizado como uma matriz com N linhas (entradas) por n
colunas (caractersticas), com uma coluna (ou vetor) extra contendo os rotulos, conforme
ilustrado na Equacao 2.18.
Dessa forma, pode-se definir um classificador ou regressor como qualquer funcao D capaz
de atribuir um rotulo a um dado de entrada, isto e, D : Rn 7→ . Geralmente uma entrada
x ∈ Rn e rotulado com a classe ou valor de maior pontuacao. Essa escolha e chamada de
”maximum membership rule”, que pode ser descrito pela Equacao 2.19.
D(x) = ωi∗ ∈ ⇐⇒ gi∗ = max i=1,...,c
{gi(x)} (2.19)
As funcoes discriminantes particionam o espaco de caractersticas Rn em c regioes
de decisao ou regioes de classificacao (nao necessariamente compactas) representadas por
46
Ri =
k=1,...,c gk(x)
} , i = 1, . . . , c. (2.20)
Uma maneira de se analisar a performance de uma classificador e por meio de uma
matriz de confusao . Uma matriz de confusao exibe a distribuicao de erros e acertos de
um classificador D. A entrada aij de tal matriz indica o numero de elementos de Zts
cuja verdadeira classe e ωi mas que foram atribudos pelo classificador D a classe ωj. A
Figura 21 exibe um exemplo de matriz de confusao para um problema de classificacao
binario, em que pode-se observar que uma das predicoes feitas como pertencente a classe
ω1 e na verdade uma amostra da classe ω2. Tomando-se essa matriz da Figura 21 como
base, uma estimativa da acuracia do classificador pode ser calculada dividindo o traco da
matriz pela soma total das entradas conforme apresentado na Equacao 2.21.
Acuracia = 7 + 7
Predito
ω2 1 7
2.7.1 Representacao por arvore de decisao
Segundo Russell et al. (2010) a arvore de decisao (ou de classificacao) e a forma
mais simples de aprendizado de maquina. Uma arvore de decisao representada por uma
fincao, toma com entrada um vetor de atributos que podem ser discreto ou contnuos e
para cada um deles retorna uma ”decisao”, que e um valor de sada unico. As decisoes
retornadas sao baseadas em uma sequencia de testes. Cada no da arvore corresponde a
um destes testes e as ramificacoes os valore possveis.
O processo de construcao de uma arvore de decisao determina automaticamente
as caractersticas importantes para a realizacao da classificacao; dessa forma, pode-se
considerar que os processos de reducao de dimensionalidade (selecao de caractersticas) e
classificacao sao realizados de forma integrada.
Em comum com outras abordagens em que as funcoes de discriminacao sao
representadas por uma combinacao de funcoes base, um modelo de arvore de decisao
adota uma expansao em funcoes de indicadores associadas hiper-regioes (retangulos
multidimensionais). O modelo e obtido por meio de um processo de particionamento
47
recursivo, em que o espaco de caractersticas subdividido em hiper-regioes cada vez
menores. Como exemplo, a Figura 22 exibe uma arvore de decisao que determina se
uma pessoa deve ir a praia ou nao.
Figura 22 – Exemplo de arvore de decisao que determina se uma pessoa deve ir a praia ou nao
Fonte: Elaborada pela autora
As principais vantagens apresentadas pelas arvores de decisao sao:
• Elas sao capazes de lidar com variaveis irrelevantes e redundantes. Cada divisao
usa uma unica (melhor) variavel; portanto, variaveis irrelevantes podem nunca ser
selecionadas.
ha necessidade de se converter um tipo para o outro.
• A escala (dimensao) das variaveis nao importa. Uma vez que cada caracterstica
e manipulada separadamente para se encontrar um limiar personalizado, nao e
necessario se normalizar ou redimensionar os dados para um dado intervalo. Uma
distancia pode nao ser trivial de se calcular quando objetos sao descritos por
caractersticas categoricas ou mistas. Arvores de decisao contornam esse problema
e podem ser vistas, segundo Duda, Hart e Stork (2001), como metodos nao-metricos
de classificacao.
• Se todos os objetos sao distinguveis (isto e, nao ha elementos identicos em no
conjunto de dados com rotulos de classe distintos), entao se pode construir uma
arvore com erro de treinamento zero.
48
• Classificadores em arvore sao intuitivos pois o processo de decisao pode ser descrito
como uma sequencia de escolhas simples. Estruturas de arvores podem capturar uma
base de conhecimentos em um arranjo hierarquico; exemplo classicos sao encontrados
na botanica, zoologia e no diagnostico medico.
• O treinamento e razoavelmente rapido; enquanto a operacao (uso) pode ser
extremamente veloz.
Arvore de decisao sao geralmente descritas usando a terminologia de grafos. Uma
arvore de classificacao consiste de uma raiz, nos intermediarios (opcionais) e folhas. A raiz
e os nos intermediarios subdividem o processo de decisao, enquanto as folhas atribuem os
rotulos de classe.
Para classificar um dado objeto, deve-se seguir o caminho da raiz ate uma das
folhas em que um rotulo e selecionado para o objeto em questao.
Para se construir uma arvore de decisao, geralmente se inicia pela raiz e se continua
subdividindo a arvore. Uma subdivisao significa que uma porcao separada do conjunto
de dados e atribuda a cada no filho (criado pela subdivisao do no interno). Por sua vez,
cada porcao e novamente dividida em partes menores ate que um criterio de parada se
alcancado. Um criterio de parada pode ser, por exemplo, se exigir que todos os objetos
estejam corretamente rotulados.
Uma vez construda uma arvore ”ideal”, deve-se poda-la para evitar ”overtraining”
(tambem chamado de ”postpruning”). Alternativamente, pode-se utilizar alguma funcao
objetivo mensuravel para se decidir quando interromper a subdivisao (denominado
”prepruning”).
Resumidamente, uma arvore de decisao e um classificador que particiona os dados
recursivamente de