Reconhecimento de Esboços de Formas Geométricas Contidas em ...
Reconhecimento de Esboços de Formas Geométricas Contidas em ...
Reconhecimento de Esboços de Formas Geométricas Contidas em ...
Transforme seus PDFs em revista digital e aumente sua receita!
Otimize suas revistas digitais para SEO, use backlinks fortes e conteúdo multimídia para aumentar sua visibilidade e receita.
UNIVERSIDADE FEDERAL DE GOIÁSINSTITUTO DE INFORMÁTICARICARDO BELLOTI DOS SANTOS<strong>Reconhecimento</strong> <strong>de</strong> <strong>Esboços</strong> <strong>de</strong> <strong>Formas</strong><strong>Geométricas</strong> <strong>Contidas</strong> <strong>em</strong> FluxogramasMo<strong>de</strong>loGoiânia2010
UNIVERSIDADE FEDERAL DE GOIÁSINSTITUTO DE INFORMÁTICAAUTORIZAÇÃO PARA PUBLICAÇÃO DE DISSERTAÇÃOEM FORMATO ELETRÔNICONa qualida<strong>de</strong> <strong>de</strong> titular dos direitos <strong>de</strong> autor, AUTORIZO o Instituto <strong>de</strong> Informáticada Universida<strong>de</strong> Fe<strong>de</strong>ral <strong>de</strong> Goiás – UFG a reproduzir, inclusive <strong>em</strong> outro formatoou mídia e através <strong>de</strong> armazenamento permanente ou t<strong>em</strong>porário, b<strong>em</strong> como a publicar nare<strong>de</strong> mundial <strong>de</strong> computadores (Internet) e na biblioteca virtual da UFG, enten<strong>de</strong>ndo-seos termos “reproduzir” e “publicar” conforme <strong>de</strong>finições dos incisos VI e I, respectivamente,do artigo 5 o da Lei n o 9610/98 <strong>de</strong> 10/02/1998, a obra abaixo especificada, s<strong>em</strong> qu<strong>em</strong>e seja <strong>de</strong>vido pagamento a título <strong>de</strong> direitos autorais, <strong>de</strong>s<strong>de</strong> que a reprodução e/ou publicaçãotenham a finalida<strong>de</strong> exclusiva <strong>de</strong> uso por qu<strong>em</strong> a consulta, e a título <strong>de</strong> divulgaçãoda produção acadêmica gerada pela Universida<strong>de</strong>, a partir <strong>de</strong>sta data.Título: <strong>Reconhecimento</strong> <strong>de</strong> <strong>Esboços</strong> <strong>de</strong> <strong>Formas</strong> <strong>Geométricas</strong> <strong>Contidas</strong> <strong>em</strong> FluxogramasAutor(a): Ricardo Belloti dos SantosGoiânia, 22 <strong>de</strong> Julho <strong>de</strong> 2010.Ricardo Belloti dos Santos – Autor– Orientador
RICARDO BELLOTI DOS SANTOS<strong>Reconhecimento</strong> <strong>de</strong> <strong>Esboços</strong> <strong>de</strong> <strong>Formas</strong><strong>Geométricas</strong> <strong>Contidas</strong> <strong>em</strong> FluxogramasDissertação apresentada ao Programa <strong>de</strong> Pós–Graduação doInstituto <strong>de</strong> Informática da Universida<strong>de</strong> Fe<strong>de</strong>ral <strong>de</strong> Goiás,como requisito parcial para obtenção do título <strong>de</strong> Mestre <strong>em</strong>Computação.Área <strong>de</strong> concentração: Recuperação <strong>de</strong> Informação.Orientadora: Profa. Dra. Ana Paula Laboissière AmbrósioGoiânia2010
RICARDO BELLOTI DOS SANTOS<strong>Reconhecimento</strong> <strong>de</strong> <strong>Esboços</strong> <strong>de</strong> <strong>Formas</strong><strong>Geométricas</strong> <strong>Contidas</strong> <strong>em</strong> FluxogramasDissertação <strong>de</strong>fendida no Programa <strong>de</strong> Pós–Graduação do Instituto <strong>de</strong>Informática da Universida<strong>de</strong> Fe<strong>de</strong>ral <strong>de</strong> Goiás como requisito parcialpara obtenção do título <strong>de</strong> Mestre <strong>em</strong> Computação, aprovada <strong>em</strong> 22 <strong>de</strong>Julho <strong>de</strong> 2010, pela Banca Examinadora constituída pelos professores:Profa. Dra. Ana Paula Laboissière AmbrósioInstituto <strong>de</strong> Informática – UFGPresi<strong>de</strong>nte da BancaProf. Dr. Díbio Leandro BorgesCIC–UnBProf. Dr. Ronaldo Martins da CostaINF–UFG
Todos os direitos reservados. É proibida a reprodução total ou parcial dotrabalho s<strong>em</strong> autorização da universida<strong>de</strong>, do autor e do orientador(a).Ricardo Belloti dos SantosGraduado <strong>em</strong> Ciêncida da Computação pelo Instituto <strong>de</strong> Informática (INF)da Universida<strong>de</strong> Fe<strong>de</strong>ral <strong>de</strong> Goiás (UFG). Atualmente é Gestor <strong>de</strong> Tecnologiada Informação na Secretaria da Fazenda do Estado <strong>de</strong> Goiás (SEFAZ-GO),atuando no Centro <strong>de</strong> Documentação, Informação e M<strong>em</strong>ória (CDIM), umprojeto <strong>de</strong> parceria entre o Estado <strong>de</strong> Goiás e a UFG para a integração <strong>de</strong>dados e disponibilização <strong>de</strong> conjuntos documentais digitais.
Dedico a DEUS, que me <strong>de</strong>u condições <strong>de</strong> seguir com firmeza e sabedoriadurante toda a execução <strong>de</strong>ste trabalho.Dedico também a meus pais que s<strong>em</strong>pre colocaram a educação dos filhos acima<strong>de</strong> qualquer coisa. Obrigado pelo amor, carinho e pelos ensinamentos recebidos durantetoda a minha vida.
Agra<strong>de</strong>cimentosÀ minha família, especialmante a meu pai Jorge e a minha mãe Maria, pelocarinho, <strong>de</strong>dicação e apoio <strong>em</strong> todos os momentos da minha vida.À minha orientadora Dra. Ana Paula L. Ambrósio, por sua sabedoria, competênciae por ter confiado <strong>em</strong> meu trabalho. Pela gran<strong>de</strong> ajuda e paciência ao longo <strong>de</strong>steperíodo, e pela orientação que contribui para o meu <strong>de</strong>senvolvimento pessoal e profissional.À minha namorada Talita, pelo companheirismo, pela cumplicida<strong>de</strong>, por estarcomigo <strong>em</strong> horas difíceis e pelo constante incentivo e estímulo para a conclusão <strong>de</strong>stetrabalho.Ao Instituto <strong>de</strong> Informática da UFG, a cada um dos meus professores e funcionários,s<strong>em</strong>pre dispostos a cooperar e cujo contato foi indispensável para minha formaçãoacadêmica.Aos meus colegas <strong>de</strong> mestrado, que tantas vezes me ajudaram a resolver probl<strong>em</strong>asque pareciam impossíveis. Fico grato pela amiza<strong>de</strong>, companherismo e solidarieda<strong>de</strong><strong>em</strong> todos os momentos. Em especial aos amigos Luciana Oliveira e Halley Wesley, vocêsme ajudaram muito nesta caminhada.Meus agra<strong>de</strong>cimentos especiais a meus colegas <strong>de</strong> trabalho Lívia Leite, MarcelLuiz e Mário Men<strong>de</strong>s Barbosa Júnior, pelo apoio na materialização <strong>de</strong>ste trabalho, pelosquais tenho gran<strong>de</strong> estima e gratidão.Finalmente, agra<strong>de</strong>ço a todos aqueles que, <strong>de</strong> forma direta ou indireta, contribuírampara a elaboração <strong>de</strong>ste trabalho.Muito obrigado a todos!E a DEUS, por tudo!
“A melhor maneira <strong>de</strong> predizer o futuro é inventá-lo.”Alan Kay,Encontro <strong>em</strong> 1971, na PARC (Palo Alto Research Center).
Resumodos Santos, Ricardo Belloti. <strong>Reconhecimento</strong> <strong>de</strong> <strong>Esboços</strong> <strong>de</strong> <strong>Formas</strong> <strong>Geométricas</strong><strong>Contidas</strong> <strong>em</strong> Fluxogramas. Goiânia, 2010. 96p. Dissertação <strong>de</strong> Mestrado.Instituto <strong>de</strong> Informática, Universida<strong>de</strong> Fe<strong>de</strong>ral <strong>de</strong> Goiás.Gran<strong>de</strong>s mudanças na socieda<strong>de</strong> e na educação vêm surgindo com o contínuo <strong>de</strong>senvolvimentotecnológico e sua diss<strong>em</strong>inação <strong>em</strong> todas as áreas. É preciso consi<strong>de</strong>rar queo momento proporciona uma oportunida<strong>de</strong> <strong>de</strong> aproximar novas tecnologias ao processoeducativo como possibilida<strong>de</strong> <strong>de</strong> melhorar os tradicionais sist<strong>em</strong>as <strong>de</strong> ensino. Celularese computadores com tinta digital, tela touchscreen e cameras vêm revolucionando a maneiracomo as pessoas interag<strong>em</strong> com tais dispositivos. Neste sentido, sist<strong>em</strong>as vêm sendo<strong>de</strong>senvolvidos para permitir a recuperação, seleção, extração <strong>de</strong> características, in<strong>de</strong>xaçãoe reconhecimento <strong>de</strong> imagens através <strong>de</strong> seu conteúdo. Enquanto aplicações para o reconhecimento<strong>de</strong> imagens vêm sendo criadas para vários domínios, até hoje os sist<strong>em</strong>as parao reconhecimento <strong>de</strong> esboços ainda não são acessíveis para educadores que necessitam <strong>de</strong>sist<strong>em</strong>as específicos para atingir os objetivos <strong>de</strong> suas aulas. Este trabalho apresenta ummétodo para reconhecimento <strong>de</strong> imagens baseado <strong>em</strong> conteúdo, utilizando esboços <strong>de</strong>senhadospelo usuário com tinta digital, para reconhecer formas geométricas presentes <strong>em</strong>fluxogramas. O método é baseado na técnica Chain Co<strong>de</strong> e as informações são extraídasa partir do contorno da imag<strong>em</strong>. Para a avaliação, um conjunto <strong>de</strong> mais <strong>de</strong> quatro mile setecentos esboços, das diferentes formas contidas <strong>em</strong> fluxogramas, foi utilizado. Osresultados obtidos mostraram um índice <strong>de</strong> reconhecimento próximo <strong>de</strong> 90%.Palavras–chaveEnsino da Computação, Recuperação da informação, CBIR, Fluxogramas, ChainCo<strong>de</strong>, Código <strong>de</strong> Fre<strong>em</strong>an.
Abstractdos Santos, Ricardo Belloti. Reconition of geometric shapes sketched inflowcharts. Goiânia, 2010. 96p. MSc. Dissertation. Instituto <strong>de</strong> Informática,Universida<strong>de</strong> Fe<strong>de</strong>ral <strong>de</strong> Goiás.The continued technological <strong>de</strong>velopment has brought many changes to society an<strong>de</strong>ducation. The moment provi<strong>de</strong>s a good opportunity to bring new technologies to theeducational process as a possibility to improve the traditional education syst<strong>em</strong>s. Phonesand computers with digital ink, touchscreen and cameras are revolutionizing the waypeople interact with and use such <strong>de</strong>vices. In this sense, syst<strong>em</strong>s have been <strong>de</strong>veloped toallow retrieval, selection, feature extraction, in<strong>de</strong>xing and image recognition based on itscontents. While image retrieval applications have been created for many domains, sketchretrieval and recognition syst<strong>em</strong>s are not yet available for educators, who need specificsyst<strong>em</strong>s to achieve the objectives in their classes. This work presents a method for imagerecognition based on its content using user-drawn sketches with digital ink, to recognizegeometric shapes found in flowcharts. The method is based on the Chain Co<strong>de</strong> technique,and the information is extracted from the image contour. For evaluation, a set of morethan four thousand and seven hundred sketches, containing the various shapes containedin flowcharts, was used. The results obtained showed recognition rates near of 90%.KeywordsInformation Retrieval, CBIR, Flowcharts, Chain Co<strong>de</strong>, Fre<strong>em</strong>an Co<strong>de</strong>.
11Beth Ahabah Community CalendarApril 2013*5 Shabbat service w/ Adult Choir 7:30 PM6 BAT mitzvah: 10:30 AMEllie Mast21SundayReligious SchoolEtz Chayim RehearsalRuach Hadash Rehearsal9:15 AM11:30 AM11:45 AM7SundayNo Religious School22 Midrasha Monday 6:30 PM10th gra<strong>de</strong> only24 midweek Hebrew 5:30 PM8 Midrasha Monday 6:30 PM9th and 10th gra<strong>de</strong> only10 midweek Hebrew 5:30 PM12 8th & 9th gra<strong>de</strong> shabbat Dinner6:00 pmFamily Shabbat servicew/Etz Chayim Choir & Ruach Chadash7:30 PM13 BAT mitzvah: 10:30 AMLyndsay Nelson26 Jewish Music shabbatw/ Adult Choir 7:30 PM27 BAT mitzvah: 10:30 AMThomas Green28SundayReligious School7th Gra<strong>de</strong> GesherEtz Chayim RehearsalRuach Hadash Rehearsal9:15 AM11:30 AM11:45 AM14SundayReligious School7th Gra<strong>de</strong> Field TripEtz Chayim RehearsalRuach Hadash Rehearsal9:15 AM11:30 AM11:45 AM29 Midrasha Monday 6:30 PM10th gra<strong>de</strong> only15 Midrasha Monday 6:30 PM9th and 10th gra<strong>de</strong> only*Please check the Community Calendar atwww.bethahabah.org for updates.17 midweek Hebrew 5:30 PM19 Shabbat service 7:30 PM20 BAT mitzvah: 10:30 AMBrianna SchwamEditorial submissions and ad materials forthe May/June issue of B’yachadare due no later than April 1st.
Stochastic Method 40Scale Space Method 40Trasformações espectrais 414.1.2 Métodos Estruturais 41Representação Chain-Co<strong>de</strong> 41Polygon Decomposition 43Smooth curve <strong>de</strong>composition 43Curvature-tuned Smoothing 43Syntatic Analysis 44Shape invariants 444.2 Baseada na região 454.2.1 Métodos Globais 45Geometric Moment Invariants 45Grid Based Method 45Shape Matrix 464.2.2 Métodos Estruturais 46Convex Hull 46Medial Axis 474.3 Conclusão 475 O Projeto 485.1 O Sketch 485.2 Escopo do projeto 505.3 Tinta Digital 515.4 O <strong>Reconhecimento</strong> das <strong>Formas</strong> 535.4.1 Formulação da consulta 535.4.2 Processamento da consulta 535.4.3 Resposta ao usuário 545.5 O Mo<strong>de</strong>lo do Sist<strong>em</strong>a 545.6 O Sist<strong>em</strong>a Desenvolvido 545.7 O Método <strong>de</strong> Extração <strong>de</strong> Características 565.7.1 Pré-processamento da Imag<strong>em</strong> 575.7.2 Análise da Imag<strong>em</strong> 605.7.3 Aprimoramento da Ca<strong>de</strong>ia <strong>de</strong> Contorno 615.7.4 Extração <strong>de</strong> Características 645.8 Conclusão 696 Avaliação 706.1 O <strong>Reconhecimento</strong> 706.2 Base <strong>de</strong> dados para o teste 716.3 Resultados 727 Conclusão e Trabalhos Futuros 817.1 Trabalhos Futuros 82Referências Bibliográficas 84A Ex<strong>em</strong>plos <strong>de</strong> formas <strong>de</strong>senhadas pelos usuários 92
Lista <strong>de</strong> Figuras1.1 Ex<strong>em</strong>plos <strong>de</strong> formas presentes <strong>em</strong> fluxogramas 192.1 Ex<strong>em</strong>plos <strong>de</strong> texturas visuais 242.2 Ex<strong>em</strong>plos <strong>de</strong> formas 242.3 Representação dos pixels <strong>de</strong> uma imag<strong>em</strong> digital [31] 262.4 Representação matricial <strong>de</strong> uma imag<strong>em</strong> digital 262.5 Aplicação <strong>de</strong> um filtro sobre uma matriz <strong>de</strong> pixels [31] 282.6 Passos fundamentais no processamento <strong>de</strong> imagens digitais [31] 293.1 D<strong>em</strong>onstrações da utilização do QBIC 354.1 Métodos para representação <strong>de</strong> forma 384.2 Conectivida<strong>de</strong> 424.3 Syntatic Analysis 444.4 Convex Hull - (adaptado <strong>de</strong> [41]) 475.1 Ex<strong>em</strong>plos <strong>de</strong> esboços 495.2 <strong>Formas</strong> 505.3 Ex<strong>em</strong>plos <strong>de</strong> imagens 515.4 Utilização da tinta 525.5 Transformação da tinta para imag<strong>em</strong> binária 535.6 Etapas do Sist<strong>em</strong>a 535.7 Processos <strong>em</strong> cada uma das etapas 545.8 Interface do Sist<strong>em</strong>a 555.9 Ex<strong>em</strong>plos da utilização do sist<strong>em</strong>a 555.10 Sketch <strong>de</strong>senhado pelo usuário 575.11 Esboço binarizado 585.12 Gra<strong>de</strong> - Matriz <strong>de</strong> pixels 595.13 I<strong>de</strong>ntificação dos pixels <strong>de</strong> borda 605.14 Ex<strong>em</strong>plo da utilização do Chain Co<strong>de</strong> 615.15 Agrupamento <strong>de</strong> transições 625.16 R<strong>em</strong>oção <strong>de</strong> transições isoladas - 1 625.17 R<strong>em</strong>oção <strong>de</strong> transições isoladas - 2 625.18 R<strong>em</strong>oção <strong>de</strong> transições isoladas - 3 635.19 Re-agrupamento 635.20 Simplificações para ca<strong>de</strong>ias <strong>de</strong> tamanho 2 645.21 Ex<strong>em</strong>plos <strong>de</strong> formas 665.22 Ex<strong>em</strong>plos <strong>de</strong> aplicação da equação 5-3 665.23 Ângulos entre cada uma das transições 66
5.24 <strong>Formas</strong> e suas proprieda<strong>de</strong>s 685.25 Aproximações para círculos e elipses 696.1 Ex<strong>em</strong>plos <strong>de</strong> formas r<strong>em</strong>ovidas 746.2 Ex<strong>em</strong>plos <strong>de</strong> formas movidas para outros grupos 756.3 Simplificações para elipses com segmentos <strong>de</strong> 3 e 5 transições 776.4 <strong>Formas</strong> com escala diferente mas com mesma ca<strong>de</strong>ia <strong>de</strong> contorno 796.5 Losango 80A.1 Ex<strong>em</strong>plos <strong>de</strong> Círculos 92A.2 Ex<strong>em</strong>plos <strong>de</strong> Elipses 93A.3 Ex<strong>em</strong>plos <strong>de</strong> Hexágonos 93A.4 Ex<strong>em</strong>plos <strong>de</strong> Quadrados 94A.5 Ex<strong>em</strong>plos <strong>de</strong> Retângulos 94A.6 Ex<strong>em</strong>plos <strong>de</strong> Linhas 95A.7 Ex<strong>em</strong>plos <strong>de</strong> Losangos 95A.8 Ex<strong>em</strong>plos <strong>de</strong> Triângulos 96A.9 Ex<strong>em</strong>plos <strong>de</strong> Trapézios 96
Lista <strong>de</strong> Tabelas6.1 Teste 1 - Resultados 736.2 Teste 2 - Resultados 756.3 Teste 3 - Resultados para segmentos <strong>de</strong> tamanho 4 e 5 766.4 Teste 4 - Resultados - Segmentos <strong>de</strong> tamanho 4,3 786.5 Teste 5 - Avaliando a invariância 79
IntroduçãoCAPÍTULO 1Com a explosão do número <strong>de</strong> usuários <strong>de</strong> computadores e usuários da internet,t<strong>em</strong> ocorrido um crescimento vertiginoso na quantida<strong>de</strong> <strong>de</strong> informação digital disponívelno mundo. Equipamentos eletrônicos como celulares, Personal digital assistants (PDA’s),computadores, cada vez mais baratos e ao alcance da população, permit<strong>em</strong> que praticamentequalquer pessoa no mundo possa gerar conteúdo digital na forma <strong>de</strong> texto, som,imag<strong>em</strong> e ví<strong>de</strong>o. Com isso mo<strong>de</strong>los para recuperação precisa <strong>de</strong> informações passaram ater ainda mais importância. Na socieda<strong>de</strong> do conhecimento e da informação, as pessoasprecisam ser capazes <strong>de</strong> obter, rapidamente, o maior número possível <strong>de</strong> informações relevantes[83]. O gran<strong>de</strong> volume <strong>de</strong> dados produzido diariamente requer o uso <strong>de</strong> novastecnologias para a organização, classificação, recuperação e processamento <strong>de</strong>ssa informação.O cérebro humano apresenta uma gran<strong>de</strong> capacida<strong>de</strong> <strong>de</strong> reconhecer informaçõesgraficamente e possui mecanismos bastante eficientes para reconhecer e interpretar imagens.Se comparada à capacida<strong>de</strong> humana, a tecnologia atualmente disponível é muitoincipiente para a construção <strong>de</strong> sist<strong>em</strong>as computacionais que analis<strong>em</strong> imagens digitalizadase recuper<strong>em</strong> informações a partir <strong>de</strong>las. Isso causa uma gran<strong>de</strong> distinção entre oque um indivíduo po<strong>de</strong> reconhecer <strong>de</strong> uma imag<strong>em</strong> e o que po<strong>de</strong> ser esperado <strong>de</strong> umsist<strong>em</strong>a computacional que tente fazer este reconhecimento. Esta distinção é comumenteconhecida como <strong>de</strong>scontinuida<strong>de</strong> s<strong>em</strong>ântica (s<strong>em</strong>antic gap) no reconhecimento <strong>de</strong> imagens[82].Neste sentido, processar uma imag<strong>em</strong> como é feito pelo sist<strong>em</strong>a visual humanoé extr<strong>em</strong>amente complexo. Para um sist<strong>em</strong>a computacional realizar as mesmas tarefasrealizadas por um ser humano, exige-se , por antecedência, uma compreensão “filosófica”do mundo ou dos conhecimentos humanos. Por isso, os métodos para o processamento<strong>de</strong> imagens possu<strong>em</strong> extr<strong>em</strong>a <strong>de</strong>pendência do sist<strong>em</strong>a ao qual ele está associado, nãoexistindo uma solução única e abrangente para todos os probl<strong>em</strong>as [1].Recuperação da Informação (RI) é uma área da computação que lida com oarmazenamento <strong>de</strong> objetos e a sua recuperação automática. Esses objetos po<strong>de</strong>m estardisponíveis sob a forma <strong>de</strong> textos, sons, imagens, ví<strong>de</strong>o, entre outros. Entre as ativida<strong>de</strong>s
15<strong>de</strong>senvolvidas po<strong>de</strong>-se citar a busca por informações nesses objetos, a busca pelos objetospropriamente ditos, busca por metadados que <strong>de</strong>screvam os objetos e busca <strong>em</strong> banco <strong>de</strong>dados.As aplicações para imagens digitais vêm se <strong>de</strong>stacando nas linhas <strong>de</strong> pesquisa. Oformato digital fornece gran<strong>de</strong> facilida<strong>de</strong> para armazenamento e manipulação <strong>de</strong> imagens.Com este crescimento, surge naturalmente a necessida<strong>de</strong> <strong>de</strong> se estabelecer técnicas quepermitam uma melhor manipulação <strong>de</strong>stes conteúdos. As primeiras técnicas propostasbaseavam-se na busca mediante uma <strong>de</strong>scrição textual das imagens. Esta proposta logose <strong>de</strong>parou com duas gran<strong>de</strong>s dificulda<strong>de</strong>s: a necessida<strong>de</strong> <strong>de</strong> muito trabalho manual pararepresentar imagens na forma <strong>de</strong> texto e a subjetivida<strong>de</strong> da percepção humana [30].Tradicionalmente, recuperar <strong>de</strong>senhos (ou imagens) é uma tarefa lenta, complexae sujeita a erros, exigindo um exame visual exaustivo, uma boa m<strong>em</strong>ória ou ambos [27].Uma implicação direta <strong>de</strong>sses probl<strong>em</strong>as é a busca <strong>de</strong> novas técnicas ou extensões paraas técnicas tradicionais <strong>de</strong> recuperação da informação, <strong>de</strong> forma a aten<strong>de</strong>r essa novanecessida<strong>de</strong> incluindo informação visual contida nas imagens. Essa linha <strong>de</strong> pesquisa éconhecida como Recuperação <strong>de</strong> Imagens Baseado <strong>em</strong> Conteúdo - Content-Based ImageRetrieval (CBIR) [26]: imagens passam as ser in<strong>de</strong>xadas pelo seu próprio conteúdo visual,utilizando-se <strong>de</strong> algoritmos capazes <strong>de</strong> extrair das mesmas características, como: cor,estrutura, textura, forma, entre outras, que serão utilizadas para o reconhecimento do seuconteúdo.Um Sist<strong>em</strong>a CBIR necessita extrair informações, a partir <strong>de</strong> uma imag<strong>em</strong>, quepossa ser processada e comparada com a consulta feita pelo usuário. A idéia central étentar “<strong>de</strong>scobrir” o conteúdo da imag<strong>em</strong> através da extração <strong>de</strong> informações que venhama caracterizar seu conteúdo. Para isso utilizam-se principalmente dados primitivos comocor, textura, forma ou uma combinação das mesmas [63], [8].A área <strong>de</strong> recuperação <strong>de</strong> imagens por conteúdo t<strong>em</strong> proporcionado um avançoconsi<strong>de</strong>rável no campo <strong>de</strong> visão computacional. Esse avanço é atribuído à necessida<strong>de</strong> <strong>de</strong>se administrar gran<strong>de</strong> quantida<strong>de</strong>s <strong>de</strong> dados e imagens. À medida que cresce o volume<strong>de</strong> imagens armazenadas, cresce também o interesse por sist<strong>em</strong>as capazes <strong>de</strong> recuperarinformações visuais <strong>de</strong> maneira eficiente e com grau <strong>de</strong> automação maior [82]. Em [59] oautor classifica as pesquisas <strong>em</strong> CBIR <strong>em</strong> três tipos:• recuperação por <strong>de</strong>senho (esboço): o usuário esboça uma imag<strong>em</strong> aproximadadaquilo que ele <strong>de</strong>seja recuperar;• recuperação por ex<strong>em</strong>plos (QBE - Query By Example): o usuário fornece umaimag<strong>em</strong> <strong>de</strong> ex<strong>em</strong>plo, similar àquela que ele <strong>de</strong>seja recuperar;• busca parametrizada: o usuário fornece parâmetros <strong>de</strong> busca que <strong>de</strong>screvam aimag<strong>em</strong>, como: "buscar imagens com 50% <strong>de</strong> azul, 20% <strong>de</strong> amarelo e 30% <strong>de</strong>ver<strong>de</strong>".
16Nos sist<strong>em</strong>as CBIR, as imagens são representadas, normalmente, através <strong>de</strong> umvetor <strong>de</strong> características que é uma representação numérica e compacta <strong>de</strong> uma dada imag<strong>em</strong>,ou <strong>de</strong> parte <strong>de</strong>la. Este vetor caracteriza as medidas dos aspectos que representam aimag<strong>em</strong>. I<strong>de</strong>almente, o vetor <strong>de</strong> características <strong>de</strong>ve ser capaz <strong>de</strong> representar, unicamente,o conteúdo da imag<strong>em</strong> a partir da qual foi gerado. O ponto-chave é encontrar um vetor <strong>de</strong>características, ou um conjunto <strong>de</strong> atributos, que: reduza a dimensão dos dados, ressalteos aspectos mais significativos da imag<strong>em</strong>, e seja invariante a alguns tipos <strong>de</strong> transformaçãona imag<strong>em</strong>. Durante o processo <strong>de</strong> busca, o sist<strong>em</strong>a <strong>de</strong>ve trabalhar diretamente como vetor <strong>de</strong> características e não com a imag<strong>em</strong>.As técnicas <strong>de</strong> recuperação utilizadas <strong>em</strong> CBIR consi<strong>de</strong>ram a informação visualda imag<strong>em</strong> e não apenas uma simples <strong>de</strong>scrição textual da mesma. De fato, existe certonível <strong>de</strong> subjetivida<strong>de</strong> <strong>em</strong> se caracterizar uma imag<strong>em</strong> pelo seu conteúdo, visto quediferentes especialistas po<strong>de</strong>m estar interessados <strong>em</strong> diferentes aspectos <strong>de</strong> uma mesmaimag<strong>em</strong> [8].Com a expansão do uso <strong>de</strong> dispositivos com tinta digital na educação, a Recuperaçãopor <strong>Esboços</strong> (ou Sketch Retrieval) apresenta um vasto campo <strong>de</strong> pesquisa para o<strong>de</strong>senvolvimento <strong>de</strong> sist<strong>em</strong>as para uso didático.O cenário abaixo foi adaptado <strong>de</strong> [34] e, <strong>em</strong>bora ainda futurista, ilustra umasituação não tão distante <strong>de</strong> nossa realida<strong>de</strong> com as tecnologias disponíveis atualmente:"Alunos entram na sala <strong>de</strong> aula para uma aula <strong>de</strong> Computação. O instrutor <strong>de</strong>senha, <strong>em</strong>um SmartBoard na frente da turma, um fluxograma e explica seu funcionamento. Ele<strong>de</strong>senha este fluxograma <strong>de</strong> forma natural, insere algumas informações como entrada eclica no botão “executar”. Passo-a-passo esta entrada é processada <strong>de</strong>ntro dofluxograma e o caminho correto é acionado. A cada etapa da execução o estado correnteé <strong>de</strong>stacado para facilitar o acompanhamento do processo. Os alunos faz<strong>em</strong> anotações<strong>em</strong> seus “tablet pcs”. Os alunos então utilizam e testam o fluxograma criado peloprofessor <strong>em</strong> seus próprios “laptops”; alteram as entradas e também alteram ofluxograma; eles assist<strong>em</strong> a simulação dos seus próprios fluxogramas, ajudando noentendimento e aprendizado <strong>de</strong>sses novos conceitos. O teste e a manipulação <strong>de</strong>stesfluxogramas possibilita que os alunos forneçam um “feedback” imediato ao professor.Este, por sua vez, avalia o aprendizado <strong>de</strong> seus alunos pedindo para que os alunosalter<strong>em</strong> o fluxo <strong>de</strong> execução, alter<strong>em</strong> as entradas do fluxograma ou até mesmo cri<strong>em</strong>novos fluxogramas. Assim que cada aluno estiver satisfeito com sua solução, o mesmoenvia seu trabalho pela re<strong>de</strong> para seu professor. Cada solução recebida éautomaticamente testada e classificada como certa ou errada. Os grupos são exibidosao instrutor no seu próprio “tablet pc”. O professor, então, po<strong>de</strong> selecionar umasubmissão errada e exibí-la no “SmartBoard”. Ele testa o fluxograma fornecendo umacerta entrada e acompanha a simulação <strong>de</strong> seu funcionamento. O erro é então <strong>de</strong>tectado
1.1 Fluxogramas 17e o professor questiona seus alunos sobre possíveis correções a ser<strong>em</strong> feitas. Quando aaula termina os alunos <strong>de</strong>ixam a sala com um entendimento completo do que sãofluxogramas e seu funcionamento, enquanto o professor recebe um “feedback” sobre ograu <strong>de</strong> aprendizado <strong>de</strong> seus alunos sobre fluxogramas ."Desenhar um fluxograma e simular o seu funcionamento mantém os alunosmotivados e aplicados durante o processo <strong>de</strong> aprendizag<strong>em</strong> <strong>de</strong>ntro da sala <strong>de</strong> aula. Oreconhecimento <strong>de</strong> esboços po<strong>de</strong> ser utilizado para interpretar os <strong>de</strong>senhos feitos e fazercom que o fluxograma “ganhe vida”. De acordo com [34], sist<strong>em</strong>as para reconhecimento<strong>de</strong> sketches têm gran<strong>de</strong> efeito pedagógico, pois:• permit<strong>em</strong> interação <strong>de</strong> forma natural, oferecendo liberda<strong>de</strong> <strong>de</strong> <strong>de</strong>senho• fornec<strong>em</strong> capacida<strong>de</strong>s <strong>de</strong> edição avançada• explicam o conteúdo gráfico <strong>de</strong>senhado pelo usuário <strong>de</strong> uma forma interativa• permit<strong>em</strong> que os alunos realiz<strong>em</strong> exercícios práticos <strong>em</strong> sala <strong>de</strong> aula• auxiliam os alunos a realizar<strong>em</strong> exercícios práticos <strong>em</strong> casa• corrig<strong>em</strong> automaticamente os exercícios <strong>de</strong> casa realizados• corrig<strong>em</strong> automaticamente os exercícios realizados <strong>em</strong> sala <strong>de</strong> aula e fornec<strong>em</strong> aoprofessor um feedback imediatoEmbora aplicações para o reconhecimento <strong>de</strong> imagens vêm sendo <strong>de</strong>senvolvidaspara vários domínios, poucos sist<strong>em</strong>as com fins didatico-pedagógicos, como [34] e[38], estão disponíveis para educadores. Tais sist<strong>em</strong>as, por sua vez, possu<strong>em</strong> foco b<strong>em</strong>específico, como auxiliar no processo <strong>de</strong> ensino e aprendizag<strong>em</strong> <strong>de</strong> algoritmos1.1 FluxogramasA aprendizag<strong>em</strong> <strong>de</strong> algoritmos é consi<strong>de</strong>rada fundamental <strong>em</strong> cursos da áreacomputacional. Seu principal objetivo é iniciar o <strong>de</strong>senvolvimento da lógica <strong>de</strong> programação,que será amplamente utilizada durante o restante do curso. Porém, a disciplina <strong>de</strong>algoritmos é consi<strong>de</strong>rada <strong>de</strong>safiadora <strong>em</strong> virtu<strong>de</strong> <strong>de</strong> possuir um alto índice <strong>de</strong> probl<strong>em</strong>as<strong>de</strong> aprendizag<strong>em</strong>, <strong>de</strong>sistências e reprovações [71].Fluxograma é um tipo <strong>de</strong> diagrama ou uma representação gráfica <strong>de</strong> um <strong>de</strong>terminadoprocesso ou fluxo <strong>de</strong> trabalho, e po<strong>de</strong> ser entendido como uma representaçãoesqu<strong>em</strong>ática <strong>de</strong> um processo, muitas vezes feito através <strong>de</strong> gráficos que ilustram <strong>de</strong> forma<strong>de</strong>scomplicada a transição <strong>de</strong> informações entre os el<strong>em</strong>entos que o compõ<strong>em</strong> [40]. Naprática, po<strong>de</strong> ser visto como a documentação dos passos necessários para a execução <strong>de</strong>uma <strong>de</strong>terminada ativida<strong>de</strong>. Através <strong>de</strong>sta representação gráfica é possível compreen<strong>de</strong>r,<strong>de</strong> maneira rápida e fácil, a transição <strong>de</strong> informações entre os el<strong>em</strong>entos que participam do
1.1 Fluxogramas 18processo <strong>em</strong> questão. Ele é composto, geralmente, <strong>de</strong> figuras geométricas normalizadas elinhas unindo essas figuras geométricas.Como exposto <strong>em</strong> [3], o uso <strong>de</strong> fluxogramas para o ensino <strong>de</strong> programação se<strong>de</strong>ve a três razões principais:• fluxogramas possu<strong>em</strong> uma sintaxe mínima e, quando se reduz o foco na sintaxe,po<strong>de</strong>-se aumentar o esforço <strong>em</strong> análise;• fluxograma é uma representação universal;• fluxogramas são mais fáceis e mais compreensíveis para estudantes iniciantes <strong>em</strong>computação do que o próprio código.É sabido que o ser humano t<strong>em</strong> mais habilida<strong>de</strong> para interpretar um algoritmousando formas visuais do que código fonte. Isso se <strong>de</strong>ve ao fato que o h<strong>em</strong>isfério esquerdodo cérebro processa informação oral e lógica, enquanto o h<strong>em</strong>isfério direito processainformação visual e espacial. Assim, a chave para tornar o ensino <strong>de</strong> algoritmos maisacessível está <strong>em</strong> utilizar aspectos visuais e textuais estimulando ambos os h<strong>em</strong>isfériosdo cérebro [3].Exist<strong>em</strong> estudos que comprovam que o ser humano consegue gravar melhor umamensag<strong>em</strong>, quando esta é acompanhada <strong>de</strong> imagens:• <strong>em</strong> [19], o autor verificou que estudantes iniciantes <strong>em</strong> algoritmos comet<strong>em</strong> menoserros, têm maior confiança e resolv<strong>em</strong> probl<strong>em</strong>as representados por algoritmossimples e médios mais rapidamente, quando utilizam fluxogramas,• <strong>em</strong> [79], o autor verificou que o uso <strong>de</strong> fluxogramas leva a uma diminuição doserros <strong>em</strong> algoritmos complexos.Vale ressaltar que fluxograma é uma forma <strong>de</strong> representação bastante a<strong>de</strong>quada àescrita humana. No entanto, para torná-los estéticamente mais agradáveis e po<strong>de</strong>r incluílos<strong>em</strong> documentos, são usados diversos aplicativos <strong>de</strong> edição <strong>de</strong> texto e <strong>de</strong>senho (ex:Word). Muitos <strong>de</strong>les oferec<strong>em</strong>, inclusive, uma palheta contendo as formas <strong>de</strong> fluxogramas,que po<strong>de</strong>m variar, assim como seu significado <strong>de</strong>ntro do fluxograma.A Figura 1.1 exibe alguns ex<strong>em</strong>plos <strong>de</strong> formas utlizadas para a construção <strong>de</strong>fluxogramas.
1.2 Objetivo 19Figura 1.1: Ex<strong>em</strong>plos <strong>de</strong> formas presentes <strong>em</strong> fluxogramas1.2 Objetivo<strong>Reconhecimento</strong> <strong>de</strong> esboços é uma área <strong>em</strong>ergente no campo da computaçãoque utiliza interfaces baseadas <strong>em</strong> canetas digitais e busca tornar a interação hom<strong>em</strong>computadormais natural [64]. Nessas interfaces o usuário po<strong>de</strong> <strong>de</strong>senhar livr<strong>em</strong>ente,direto na tela, s<strong>em</strong> utilizar o mouse ou teclado. A principal vantag<strong>em</strong> <strong>de</strong>sta tecnologiaé a sua intuitivida<strong>de</strong> e facilida<strong>de</strong> <strong>de</strong> uso. O usuário po<strong>de</strong> <strong>de</strong>senhar e até mesmo escrevertextos manuscritos diretamente sobre a tela.Sist<strong>em</strong>as para o reconhecimento <strong>de</strong> sketches po<strong>de</strong>m ter um efeito pedagógicoprofundo e facilitar o processo <strong>de</strong> ensino [36]. Diagramas gráficos são importantes <strong>em</strong>várias áreas do conhecimento e po<strong>de</strong>m ser utilizados <strong>em</strong> todo o processo <strong>de</strong> aprendizag<strong>em</strong>.Este trabalho t<strong>em</strong> como objetivo apresentar um método para reconhecimento <strong>de</strong>imagens baseado na sua forma. As imagens são esboços <strong>de</strong> formas geométricas contidas<strong>em</strong> fluxogramas, criadas naturalmente pelo usuários com a utilização <strong>de</strong> tinta digital. Elefaz parte <strong>de</strong> um projeto maior e servirá como “ponto <strong>de</strong> partida” para o <strong>de</strong>senvolvimento<strong>de</strong> um sist<strong>em</strong>a <strong>de</strong> geração <strong>de</strong> código automático a partir <strong>de</strong> fluxogramas expressadospelo usuário. Neste sist<strong>em</strong>a maior, um fluxograma esboçado pelo usuário po<strong>de</strong>rá ser
1.3 Justificativa 20interpretado, executado e convertido <strong>em</strong> código fonte específico.1.3 JustificativaA tecnologia <strong>de</strong> tinta digital está cada vez mais presente nos equipamentoseletrônicos: celulares, notebooks, computadores pessoais, tablet PC’s, entre outros. Suagran<strong>de</strong> vantag<strong>em</strong> é permitir uma forma <strong>de</strong> comunicação mais natural entre hom<strong>em</strong>e máquina. Os fluxogramas constitu<strong>em</strong> uma boa ferramenta para que alunos possamrepresentar e visualizar algoritmos durante o processo <strong>de</strong> aprendizag<strong>em</strong>. Uma ferramentaque permita a utilização <strong>de</strong> tinta digital durante a elaboração <strong>de</strong> fluxogramas é muitointeressante para disciplinas <strong>de</strong> Introdução à Computação.Para a criação <strong>de</strong> uma ferramenta que permita o reconhecimento e a interpretação<strong>de</strong> fluxogramas, primeiro é necessário o <strong>de</strong>senvolvimento <strong>de</strong> um método que reconheçaas diferentes estruturas (ou formas geométricas) presentes nos fluxogramas.Durante os estudos iniciais <strong>de</strong>ste trabalho, não foram encontrados sist<strong>em</strong>as queabordavam o reconhecimento <strong>de</strong> formas geométricas presentes <strong>em</strong> fluxogramas. Entre ossist<strong>em</strong>as estudados, o Sist<strong>em</strong>a LADDER [35] mostrou-se o mais promissor por trabalhardiretamente com tinta digital, mas sua utilização não foi possível dada a indisponibilida<strong>de</strong>do mesmo. Este sist<strong>em</strong>a permite a <strong>de</strong>finição e o reconhecimento <strong>de</strong> formas a partir <strong>de</strong>uma linguag<strong>em</strong> própria que, por sua vez, permite a especificação <strong>de</strong> formas <strong>em</strong> umdomínio. Esta especificação é feita com a <strong>de</strong>finição <strong>de</strong> como cada forma é <strong>de</strong>senhada:sua geometria, restrições e a informação contextual associada a cada forma.Os outros sist<strong>em</strong>as encontrados utilizam <strong>de</strong>scritores como: histograma <strong>de</strong> intensida<strong>de</strong>da cor, cor, distribuição <strong>de</strong> texturas, disposição <strong>de</strong> cor e forma, saliências dos objetos,localização <strong>de</strong> “cantos”, entre outros, que infelizmente, como apresentado <strong>em</strong> [25],não fornec<strong>em</strong> bons resultados quando a entrada são segmentos lineares <strong>de</strong>senhados pelousuário. Nesses casos, informações como cor e textura não estão disponíveis.Sendo assim, como não foram encontrados outros sist<strong>em</strong>as direcionados aoreconhecimento <strong>de</strong> formas geométricas contidas <strong>em</strong> fluxogramas, <strong>de</strong>senhadas usandotinta digital, optou-se por <strong>de</strong>senvolver um método específico para este domínio. Foi<strong>de</strong>senvolvido um método para o reconhecimento e especificação das formas geométricas,justificando, portanto, o projeto <strong>de</strong>scrito neste trabalho1.4 MetodologiaO estudo <strong>em</strong> questão foi dividido <strong>em</strong> diversas etapas, que juntas, integramo trabalho <strong>de</strong>senvolvido. O primeiro passo foi realizar um levantamento bibliográfico(livros, artigos e Internet) acerca dos conceitos, dos <strong>de</strong>senvolvimentos e das aplicações <strong>em</strong>
1.5 Estrutura da Dissertação 21reconhecimento <strong>de</strong> padrões, in<strong>de</strong>xação e recuperação <strong>de</strong> imagens, mais especificamentesobre o probl<strong>em</strong>a <strong>de</strong> reconhecimento <strong>de</strong> esboços.Uma vez levantadas as técnicas mais utilizadas, partiu-se para o <strong>de</strong>senvolvimento<strong>de</strong> um método que permitisse o reconhececimento <strong>de</strong> formas. São formas geométricascontida <strong>em</strong> fluxogramas, e o reconhecimento é feito sobre formas isoladas, ou seja, ofluxograma <strong>de</strong>ve estar segmentado.Tendo <strong>de</strong>senvolvido o método, o próximo passo era a sua validação. Para testá-louma massa <strong>de</strong> dados foi criada. Alguns usuários <strong>de</strong>senharam <strong>em</strong> um tablet pc, utilizandotinta digital, várias formas geométricas similares aquelas presentes nos fluxogramas. Estasimagens foram, então, analisadas por um sist<strong>em</strong>a <strong>em</strong> que o método foi impl<strong>em</strong>entado.O método proposto, a elaboração do conjunto <strong>de</strong> amostras para o teste, aavaliação do método e os resultados estão <strong>de</strong>scritos nos capítulos seguintes.O trabalho é encerrado com a apresentação das conclusões, obtidas durante osexperimentos realizados, e com a apresentação <strong>de</strong> possíveis trabalhos futuros.1.5 Estrutura da DissertaçãoEste trabalho é dividido <strong>em</strong> sete capítulos. Neste primeiro capítulo encontram-seas consi<strong>de</strong>rações iniciais e os objetivos do trabalho.No segundo capítulo é feita uma breve introdução sobre o que é o Processamento<strong>de</strong> Imagens. Alguns conceitos el<strong>em</strong>entares e algumas das técnicas utilizadas neste trabalhosão abordadas.No terceiro capítulo apresentam-se alguns Trabalhos Relacionados que, diretaou indiretamente, serviram como fonte <strong>de</strong> inspiração para esta dissertação. Ex<strong>em</strong>plos <strong>de</strong>sist<strong>em</strong>as e trabalhos sobre o reconhecimento <strong>de</strong> formas são alguns dos t<strong>em</strong>as abordados.No quarto capítulo é apresentado um resumo das principais técnicas <strong>de</strong> representação<strong>de</strong> formas.No quinto capítulo apresenta-se o projeto <strong>de</strong>senvolvido. T<strong>em</strong>as como: o escopodo trabalho, a utilização da tinta digital, o sist<strong>em</strong>a <strong>de</strong>senvolvido, o método utilizado, e aextração das características da imag<strong>em</strong>, são alguns dos assuntos tratados.O sexto capíutlo trata da avaliação do método. Como foi criada a base <strong>de</strong> imagenspara o teste, como a avaliação do método proposto foi feita e, por fim, os resultadosobtidos.Para finalizar, no sétimo capítulo, as conclusões e sugestões <strong>de</strong> trabalhos futurossão apresentados.
Processamento <strong>de</strong> Imagens DigitaisCAPÍTULO 2Processamento <strong>de</strong> imag<strong>em</strong> é qualquer forma <strong>de</strong> processamento <strong>de</strong> dados no quala entrada são imagens tais como fotografias, quadros <strong>de</strong> um ví<strong>de</strong>o ou <strong>de</strong>senhos feitopor um usuário [1]. Ao contrário do tratamento <strong>de</strong> imagens, que preocupa-se somentena manipulação <strong>de</strong> figuras para sua representação final, o processamento <strong>de</strong> imagens éum estágio para novos processamentos <strong>de</strong> dados tais como aprendizag<strong>em</strong> <strong>de</strong> máquina oureconhecimento <strong>de</strong> padrões.A visão é o nosso sentido mais aguçado, logo imagens têm um papel muitoimportante na nossa percepção do mundo. Uma imag<strong>em</strong> po<strong>de</strong> ser <strong>de</strong>finida como umafunção bi-dimensional, f(x,y), on<strong>de</strong> x e y são coor<strong>de</strong>nadas espaciais e a amplitu<strong>de</strong> <strong>de</strong> fnos pontos (x,y) é chamada <strong>de</strong> nível <strong>de</strong> intensida<strong>de</strong> neste dado ponto [31].Nas seções seguintes serão <strong>de</strong>scritos alguns conceitos comumente utilizados naÁrea <strong>de</strong> Processamento <strong>de</strong> Imagens Digitais e que serão utilizados ao longo <strong>de</strong>ste trabalho.2.1 Descritores <strong>de</strong> Conteúdo da Imag<strong>em</strong>Os conteúdos visuais extraídos <strong>de</strong> uma imag<strong>em</strong> são também chamados <strong>de</strong><strong>de</strong>scritores das imagens, e são utilizados para representá-las e in<strong>de</strong>xá-las. Depen<strong>de</strong>ndodo domínio da aplicação, po<strong>de</strong> ser suficiente apenas <strong>de</strong>screver as imagens parcialmente,ou seja, <strong>de</strong>screver alguma característica particular que represente o seu conteúdo <strong>de</strong>ntrodo contexto da aplicação. A recuperação da imag<strong>em</strong> está baseada na similarida<strong>de</strong> dascaracterísticas extraídas a partir <strong>de</strong>stes atributos.O objetivo principal é aumentar/<strong>de</strong>stacar os aspectos da imag<strong>em</strong> que sejamrelevantes para a pesquisa sendo feita e minimizar/<strong>de</strong>scartar os aspectos restantes. Dentro<strong>de</strong>sta filosofia, po<strong>de</strong>-se <strong>de</strong>screver o conteúdo <strong>de</strong> uma imag<strong>em</strong> através <strong>de</strong> sua cor, forma ouestrutura visual (layout).
2.1 Descritores <strong>de</strong> Conteúdo da Imag<strong>em</strong> 232.1.1 CorTambém referida como <strong>de</strong>scritor <strong>de</strong> conteúdo cromático, a cor é a característicavisual mais utilizada para a in<strong>de</strong>xação e recuperação <strong>de</strong> imagens <strong>em</strong> CBIR´s [74]. Exist<strong>em</strong>diferentes representações <strong>de</strong> cores que inclu<strong>em</strong> <strong>de</strong>s<strong>de</strong> o RGB (red, green, blue) até o HSI(hue, saturation, intensity).O conteúdo cromático <strong>de</strong> uma imag<strong>em</strong> digital po<strong>de</strong> ser <strong>de</strong>scrito através <strong>de</strong> umhistograma <strong>de</strong> cores. De acordo com [17] gran<strong>de</strong> parte dos trabalhos <strong>de</strong> extração <strong>de</strong>características baseadas <strong>em</strong> distribuição <strong>de</strong> cores estão concentrados no histograma <strong>de</strong>cor. Computacionalmente, este histograma é uma estrutura unidimensional, que armazenao número <strong>de</strong> ocorrências <strong>de</strong> cada possível valor cromático <strong>em</strong> uma imag<strong>em</strong>. O tamanho<strong>de</strong>sta estrutura <strong>de</strong>ve ser igual ao número <strong>de</strong> cores possíveis no espaço cromático utilizadopara representar a imag<strong>em</strong>.Em um histograma associamos a cada intensida<strong>de</strong> <strong>de</strong> cor presente na imag<strong>em</strong>,sua frequência <strong>de</strong> ocorrência, ou seja, o número <strong>de</strong> pixels da imag<strong>em</strong> que utilizam cadacor. Os histogramas <strong>de</strong> cor são invariantes à translação e rotação da imag<strong>em</strong>, sendo quecom a normalização dos histogramas, obtém-se também a invariância à escala.Uma <strong>de</strong>svantag<strong>em</strong> evi<strong>de</strong>nte é que o vetor <strong>de</strong> características po<strong>de</strong>rá ser muitogran<strong>de</strong> se a imag<strong>em</strong> contém um número muito alto <strong>de</strong> cores.2.1.2 TexturaA análise <strong>de</strong> texturas é um dos aspectos fundamentais da visão humana, na qual épossível discriminar entre superfícies e objetos. Textura po<strong>de</strong> ser <strong>de</strong>finida como mudançasna intensida<strong>de</strong> da imag<strong>em</strong> que formam <strong>de</strong>terminados padrões repetitivos, já que paraos autores <strong>de</strong> [88] não existe uma <strong>de</strong>ifinição clara do que seja textura. De uma formagenérica, po<strong>de</strong>-se consi<strong>de</strong>rar que texturas são padrões visuais complexos compostos porpadrões que possu<strong>em</strong> proprieda<strong>de</strong>s peculiares (como <strong>de</strong>nsida<strong>de</strong>, brilho, granulação, etc),ou <strong>de</strong> acordo com [86], são os padrões visuais homogêneos não resultantes da presença <strong>de</strong>uma única cor ou intensida<strong>de</strong> <strong>de</strong> cores. É uma proprieda<strong>de</strong> visual <strong>de</strong> praticamente todasas superfícies, como nuvens, cabelo, pele, árvores, rochas, etcDe acordo com [30], as texturas <strong>de</strong> uma imag<strong>em</strong> também po<strong>de</strong>m ser <strong>de</strong>scritasatravés <strong>de</strong> histogramas. Para a criação <strong>de</strong>stes histogramas, a imag<strong>em</strong> é inicialmenteconvertida para representação <strong>em</strong> escala <strong>de</strong> cinza. Depois <strong>de</strong>sta conversão é aplicado umalgoritmo <strong>de</strong> <strong>de</strong>tecção <strong>de</strong> bordas, como o Algoritmo <strong>de</strong> Canny, um método amplamenteutilizado na <strong>de</strong>tecção <strong>de</strong> bordas <strong>de</strong> imagens digitais. Depois da <strong>de</strong>tecção das bordas daimag<strong>em</strong> <strong>de</strong>scrita <strong>em</strong> tons <strong>de</strong> cinza obt<strong>em</strong>-se uma imag<strong>em</strong> binária. Nesta imag<strong>em</strong> ospixels pretos correspon<strong>de</strong>m aos pontos da imag<strong>em</strong> on<strong>de</strong> foi caracterizada a presença <strong>de</strong>
2.1 Descritores <strong>de</strong> Conteúdo da Imag<strong>em</strong> 24uma borda, provavelmente resultante <strong>de</strong> um contraste com o plano <strong>de</strong> fundo <strong>de</strong>scrito naimag<strong>em</strong>, ou seja, on<strong>de</strong> houve mudança <strong>de</strong> textura.Segundo [52], mo<strong>de</strong>los computacionais que utilizam textura po<strong>de</strong>m ser agrupados<strong>em</strong> três categorias: estrutural, estatístico e espectral. Mo<strong>de</strong>los estruturais caracterizamtexturas <strong>de</strong> acordo com o relacionamento local entre pixels da imag<strong>em</strong>, ou seja, lidam como arranjo espacial <strong>de</strong> primitivas estruturais. Mo<strong>de</strong>los estatísticos organizam as texturas <strong>de</strong>acordo com medidas estatísticas <strong>de</strong> características visuais, tais como grossura, granularida<strong>de</strong>,regularida<strong>de</strong>, entre outros. E, por fim, mo<strong>de</strong>los espectrais caracterizam textura comoproprieda<strong>de</strong>s da transformada <strong>de</strong> Fourier ou nos resultados <strong>de</strong> filtrag<strong>em</strong> das texturas porfiltros apropriados. A Figura 2.1 apresenta alguns ex<strong>em</strong>plos <strong>de</strong> textura.Figura 2.1: Ex<strong>em</strong>plos <strong>de</strong> texturas visuaisSua principal vantag<strong>em</strong> no processo <strong>de</strong> reconhecimento é <strong>de</strong> <strong>de</strong>finir os limites <strong>de</strong>um objeto, b<strong>em</strong> como i<strong>de</strong>ntificar o relacionamento entre os objetos e o ambiente <strong>em</strong> queestão inseridos. Assim como no caso das cores, um gran<strong>de</strong> probl<strong>em</strong>a enfrentado é o dadimensionalida<strong>de</strong> do vetor <strong>de</strong> características [77] que po<strong>de</strong> acabar ficando muito elevadotornando a recuperação mais lenta.2.1.3 FormaAssim como a cor e a textura, a forma também é muito importante no processo<strong>de</strong> i<strong>de</strong>ntificação e reconhecimento <strong>de</strong> um objeto. É possível i<strong>de</strong>ntificar diferentes objetos<strong>em</strong> uma imag<strong>em</strong> analisando apenas as formas dos mesmos. Em muitos probl<strong>em</strong>as reais,tais como reconhecimento <strong>de</strong> caracteres e reconhecimentos <strong>de</strong> digitais, as formas são oobjeto <strong>de</strong> busca [78]. A Figura 2.2 exibe alguns ex<strong>em</strong>plos <strong>de</strong> formas <strong>de</strong> imagens.Figura 2.2: Ex<strong>em</strong>plos <strong>de</strong> formas
2.2 Pixel 25Apesar da sua importância, a recuperação baseada <strong>em</strong> forma não é simples. Naverda<strong>de</strong>, <strong>em</strong> sist<strong>em</strong>as CBIR, o atributo forma é o que apresenta maior dificulda<strong>de</strong> quandousado na recuperação <strong>de</strong> imagens [77].Existe uma varieda<strong>de</strong> <strong>de</strong> técnicas propostas na literatura para representação <strong>de</strong>formas. Segundo [91] e [18], exist<strong>em</strong> basicamente dois tipos <strong>de</strong> <strong>de</strong>scritores <strong>de</strong> forma:os baseados <strong>em</strong> contorno (contour-based) e os baseados <strong>em</strong> região (region-based).Depen<strong>de</strong>ndo da abordag<strong>em</strong> utilizada os resultados são diferentes. Dentro <strong>de</strong> cada uma<strong>de</strong>ssas abordagens uma nova divisão po<strong>de</strong> ser feita: se primitivas tais como segmentose figuras geométricas são utilizadas, consi<strong>de</strong>ra-se uma abordag<strong>em</strong> estrutural; no casoda forma ser tratada como um todo, a abordag<strong>em</strong> é consi<strong>de</strong>rada global. Dentro <strong>de</strong>ssasabordagens vários <strong>de</strong>scritores po<strong>de</strong>m ser enumerados. A seção 4 aprofunda, um poucomais nesta divisão.Deve-se levar <strong>em</strong> conta a necessida<strong>de</strong> <strong>de</strong> métodos que possuam invariância amudanças <strong>de</strong> orientação (rotação e translação) b<strong>em</strong> como a variações <strong>de</strong> escala, poisobjetos s<strong>em</strong>elhantes, mas com tamanhos diferentes <strong>de</strong>v<strong>em</strong> ser consi<strong>de</strong>rados similaresin<strong>de</strong>pen<strong>de</strong>nte <strong>de</strong> seu tamanho.2.2 PixelUma imag<strong>em</strong> digital é composta <strong>de</strong> um número finito <strong>de</strong> el<strong>em</strong>entos, cada umcontendo uma localização particular e um valor. Esses el<strong>em</strong>entos que compõ<strong>em</strong> a imag<strong>em</strong>digital são chamados <strong>de</strong> "Picture el<strong>em</strong>ents" ou pixels.Um pixel é o el<strong>em</strong>ento básico <strong>de</strong> uma imag<strong>em</strong>. A representação mais conhecidapara imagens digitais e seu conjunto <strong>de</strong> ”pixels” é a adotada <strong>em</strong> [31]. Uma imag<strong>em</strong> érepresentada por uma matriz MxN on<strong>de</strong> cada el<strong>em</strong>ento da matriz representa um pixel daimag<strong>em</strong> digital. A Figura 2.3 ilustra esta notação.
2.2 Pixel 26Figura 2.3: Representação dos pixels <strong>de</strong> uma imag<strong>em</strong> digital [31]Esta notação permite que uma imag<strong>em</strong> digital seja representada como umamatriz MxN. Cada el<strong>em</strong>ento que compoe a matriz representa o valor <strong>de</strong> cada pixel <strong>em</strong>sua posição específica.Figura 2.4: Representação matricial <strong>de</strong> uma imag<strong>em</strong> digitalA forma mais comum para o pixel é a forma retangular ou quadrada quepossui dimensões finitas na representação <strong>de</strong> uma imag<strong>em</strong>. Normalmente, as imagenssão organizadas na forma <strong>de</strong> uma matriz <strong>de</strong> pixels com simetria quadrada. Um probl<strong>em</strong>adireto <strong>de</strong>sta organização é que um pixel não apresenta as mesmas proprieda<strong>de</strong>s <strong>em</strong> todasas direções, por ex<strong>em</strong>plo, ele é anisotrópico (é a característica que uma substância possui<strong>em</strong> que uma certa proprieda<strong>de</strong> física varia com a direção). Esta proprieda<strong>de</strong> faz comque um pixel tenha 4 (quatro) vizinhos <strong>de</strong> borda e 4 (quatro) vizinhos <strong>de</strong> diagonal. Deacordo com [1], t<strong>em</strong>os dois tipos <strong>de</strong> conectivida<strong>de</strong>s: D4 (consi<strong>de</strong>rando apenas os vizinhos<strong>de</strong> borda verticais e horizontais) ou D8 (consi<strong>de</strong>rando os vizinhos <strong>de</strong> borda verticais,horizontais e diagonais).Se a for adotada a Conectivida<strong>de</strong> D4, um pixel p com coor<strong>de</strong>nadas (x,y) possuidois vizinhos na horizontal e dois vizinhos na vertical , representados por:(x+1,y), (x-1,y), (x,y+1), (x,y-1)
2.3 Transformadas e Filtros 27Caso seja adotada a conectivida<strong>de</strong> D8, além dos vizinhos horizontais e verticais t<strong>em</strong>-s<strong>em</strong>ais quatro vizinhos nas diagonais, representados por:(x+1, y+1), (x+1, y-1), (x-1, y+1), (x-1, y-1)Dois pixels são conectados se, e somente se, for<strong>em</strong> vizinhos. A distância entre umpixel e seus vizinhos é igual a 1 (um), se for um vizinho <strong>de</strong> borda, ou √ 2 (raiz quadrada<strong>de</strong> dois), se for um vizinho <strong>de</strong> diagonal.2.3 Transformadas e FiltrosTransformadas são operações realizadas sobre uma imag<strong>em</strong> para obtenção <strong>de</strong>uma nova representação <strong>de</strong> seu conteúdo que seja mais a<strong>de</strong>quada, ou mais apropriada,para a aplicação. Como ex<strong>em</strong>plos <strong>de</strong> algumas transformadas po<strong>de</strong>mos citar:- Conversão para tons <strong>de</strong> cinza: converte uma imag<strong>em</strong> do padrão RGB ouCMKY para o padrão <strong>de</strong> tons <strong>de</strong> cinza.- Convolve: é uma operação espacial on<strong>de</strong> se aplica uma máscara sobre aimag<strong>em</strong>. Ela é composta <strong>de</strong> uma série <strong>de</strong> iterações e <strong>em</strong> cada passo a máscara é sobrepostaa um grupo <strong>de</strong> pixels da imag<strong>em</strong>. Cada pixel da imag<strong>em</strong> é multiplicado pelo pixel que osobrepõe, estes produtos são somados para obter o pixel resultante [47]. Esse processo éaplicado a todos os pixels da imag<strong>em</strong>, gerando o efeito <strong>de</strong> suavização (smoothing). Estaoperação não afeta os pixels da borda da imag<strong>em</strong>, pois ela utiliza pixels vizinhos paracalcular o pixel resultante.Os filtros são modos <strong>de</strong> se manipular as matrizes <strong>de</strong> pixels para se obter informações<strong>de</strong>sejadas ou eliminar aquelas informações que prejudicam o correto funcionamentoda aplicação. Basicamente, uma máscara é uma pequena matriz <strong>em</strong> que seus coeficientes<strong>de</strong>terminam a natureza do processo a que se aplicam. Eles se baseiam <strong>em</strong> uma matriz<strong>de</strong> convolução, que é uma matriz responsável por <strong>de</strong>finir, para cada el<strong>em</strong>ento, como estese relaciona com os seus vizinhos. O valor <strong>de</strong> cada pixel da imag<strong>em</strong> obtida após a filtrag<strong>em</strong>será <strong>de</strong>terminado, então, como resultado das operações <strong>de</strong>finidas pela matriz <strong>de</strong>convolução para os el<strong>em</strong>entos correspon<strong>de</strong>ntes da matriz original [9]. A convolução éuma operação bastante comum entre as aplicações para processamento <strong>de</strong> imagens.A máscara, ou filtro, aplicado a uma imag<strong>em</strong> irá <strong>de</strong>terminar o efeito resultante.Algoritmo: Para cada pixel da imag<strong>em</strong>• Posicionar centro do filtro sobre o pixel sendo analisado• Calcular média pon<strong>de</strong>rada dos pixels vizinhos segundo os valores do filtro• O pixel correspon<strong>de</strong>nte na imag<strong>em</strong> final ganhará essa médiaA figura 2.5 ilustra o processo <strong>de</strong> aplicação <strong>de</strong> um filtro sobre uma imag<strong>em</strong>.
2.4 Histograma 28Figura 2.5: Aplicação <strong>de</strong> um filtro sobre uma matriz <strong>de</strong> pixels [31]2.4 HistogramaUm histograma é uma função h(rk) = nk, on<strong>de</strong> r é o valor do pixel e nk é onúmero <strong>de</strong> pixels na imag<strong>em</strong> que possu<strong>em</strong> o valor igual a rk. Uma prática b<strong>em</strong> comum énormalizar o histograma dividindo-se cada um <strong>de</strong> seus valores pelo número total <strong>de</strong> pixelsna imag<strong>em</strong>, <strong>de</strong>notado por n [31]. Desta forma, um histograma normalizado é dado pelaEquação 2-1 e a soma <strong>de</strong> todos os seus componentes é igual a 1 (um).p(rk) = nkn(2-1)
2.5 Região <strong>de</strong> Interesse 292.5 Região <strong>de</strong> InteresseOutro conceito importante é o <strong>de</strong> Região <strong>de</strong> Interesse (ROI - “Region OfInterest”). A ROI é a região <strong>de</strong>finida a partir <strong>de</strong> parâmetros da imag<strong>em</strong> (ou por um usuário)on<strong>de</strong> o processamento está mais concentrado. Desta forma é possível isolar/<strong>de</strong>stacar uma<strong>de</strong>terminada região da imag<strong>em</strong> e <strong>de</strong>sconsi<strong>de</strong>rar todo o restante.2.6 Passos Fundamentais no Processamento <strong>de</strong> ImagensDigitaisA figura 2.6 é uma simplificação feita a partir <strong>de</strong> [31] e ilustra os passosfundamentais presentes <strong>em</strong> um Sist<strong>em</strong>a <strong>de</strong> Processamento <strong>de</strong> Imagens Digitais:Figura 2.6: Passos fundamentais no processamento <strong>de</strong> imagensdigitais [31]O primeiro passo no processo é a aquisição da imag<strong>em</strong>, isto é, adquirir umaimag<strong>em</strong> digital. Após a obtenção <strong>de</strong> uma imag<strong>em</strong> digital, o próximo passo trata <strong>de</strong> préprocessaraquela imag<strong>em</strong>. A função chave no pré-processamento é realçar as características<strong>de</strong> interesse e ocultar ou minimizar as características contidas na imag<strong>em</strong> que não sãorelevantes ao sist<strong>em</strong>a, ou seja, melhorar a imag<strong>em</strong> <strong>de</strong> forma a aumentar as chances para osucesso dos processos seguintes. Um ex<strong>em</strong>plo típico <strong>de</strong> pré-processamento envolve técnicaspara o realce <strong>de</strong> contrastes, r<strong>em</strong>oção <strong>de</strong> ruído e isolamento <strong>de</strong> regiões <strong>de</strong> interesse,entre outros.O próximo estágio trata da segmentação que divi<strong>de</strong> uma imag<strong>em</strong> <strong>de</strong> entrada<strong>em</strong> partes ou objetos constituintes. Em geral, a segmentação automática é uma dastarefas mais difíceis no processamento <strong>de</strong> imagens digitais. Um processo <strong>de</strong> segmentação
2.7 Conclusão 30robusto é essencial para o bom <strong>de</strong>s<strong>em</strong>penho do sist<strong>em</strong>a, favorecendo uma solução b<strong>em</strong>sucedida. Algoritmos <strong>de</strong> segmentação fracos ou erráticos quase s<strong>em</strong>pre prejudicam ofuncionamento do sist<strong>em</strong>a. No caso <strong>de</strong> reconhecimento <strong>de</strong> objetos pelo seu contorno,o papel básico da segmentação é extrair objetos individuais do fundo da imag<strong>em</strong> e buscardistinguir objetos distintos.A saída do estágio <strong>de</strong> segmentação é constituída tipicamente por dados <strong>em</strong> forma<strong>de</strong> pixels, correspon<strong>de</strong>ndo tanto à fronteira <strong>de</strong> uma região como a todos os pontos <strong>de</strong>ntroda mesma. Em ambos os casos é necessário converter os dados para uma forma a<strong>de</strong>quadaao processamento computacional. A representação por fronteira é a<strong>de</strong>quada quando ointeresse se concentra nas características da forma externa, tais como cantos ou pontos<strong>de</strong> inflexão. A representação por região é a<strong>de</strong>quada quando o interesse se concentra<strong>em</strong> proprieda<strong>de</strong>s internas, tais como textura ou a forma do objeto. A escolha <strong>de</strong> umarepresentação é apenas parte da solução para transformar os dados iniciais numa formaa<strong>de</strong>quada para o subseqüente processamento computacional.Um método para <strong>de</strong>screver os dados também <strong>de</strong>ve ser especificado, <strong>de</strong> forma queas características <strong>de</strong> interesse sejam enfatizadas. O processo <strong>de</strong> <strong>de</strong>scrição, também chamadoseleção <strong>de</strong> características, procura extrair caracteristicas que result<strong>em</strong> <strong>em</strong> algumainformação <strong>de</strong> interesse ou que sejam básicas para discriminação entre classes <strong>de</strong> objetos.O último estágio envolve o reconhecimento e a interpretação. <strong>Reconhecimento</strong>é o processo que atribui um rótulo a um objeto, baseado na informação fornecida pelo seu<strong>de</strong>scritor. A interpretação envolve a atribuição <strong>de</strong> significado a um conjunto <strong>de</strong> objetosreconhecidos.2.7 ConclusãoNeste capítulo foram apresentadas algumas técnicas comumente utilizadas noprocessamento <strong>de</strong> imagens digitais. O objetivo não foi fazer uma revisão completa sobreo assunto, mas apenas elucidar alguns conceitos importantes sobre este t<strong>em</strong>a que foramfundamentais para o <strong>de</strong>senvolvimento <strong>de</strong>ste trabalho e para compreensão do mesmo.
Trabalhos RelacionadosCAPÍTULO 3Diariamente, equipamentos civis e militares geram gigabytes <strong>de</strong> imagens [74].Com esse crescimento das bases <strong>de</strong> imagens, <strong>de</strong>vido às inovações tecnológicas, tornou-senecessário manter algum tipo <strong>de</strong> mecanismo <strong>de</strong> in<strong>de</strong>xação e recuperação <strong>de</strong>sse conteúdovisual.Enquanto buscas baseadas <strong>em</strong> texto têm conseguido recuperar textos com relativo“sucesso”, s<strong>em</strong> compreen<strong>de</strong>r o seu conteúdo, as mesmas técnicas utilizadas na recuperaçãotextual, quando aplicadas no reconhecimento <strong>de</strong> imagens, não têm obtido bonsresultados. Por isso, pesquisadores <strong>de</strong> várias partes do mundo vêm trabalhando <strong>em</strong> novosmétodos <strong>de</strong> busca para ser<strong>em</strong> aplicados nas imagens. Ao longo das últimas décadas,tentativas ambiciosas foram feitas no <strong>de</strong>senvolvimento <strong>de</strong> sist<strong>em</strong>as que permitiss<strong>em</strong> àsmáquinas “reconhecer” e recuperar imagens das mais variadas fontes. Em [22] foram discutidasas principais contribuições relacionadas à recuperação <strong>de</strong> imagens feitas na últimadécada.As características, ou feições, que compõ<strong>em</strong> uma imag<strong>em</strong> formam a base dosSist<strong>em</strong>as CBIR. Dentro do escopo <strong>de</strong> características visuais, po<strong>de</strong>-se classificá-las comocaracterísticas gerais (cor, textura e forma) ou específicas <strong>de</strong> um domínio (rostos humanos,impressões digitais, exames <strong>de</strong> ressonância magnética, etc.). Em [84] o autor apresenta umuma distinção entre os domínios das aplicações <strong>de</strong> CBIR:• domínios restritos (narrow domains): é um domínio limitado <strong>em</strong> que a variabilida<strong>de</strong>das imagens é previsível <strong>em</strong> todos os aspectos. Ou seja, o conjunto das imagensé conhecido. Normalmente possu<strong>em</strong> pequeno gap s<strong>em</strong>ântico 1 , o que favorece autilização <strong>de</strong> mo<strong>de</strong>los específicos ao domínio <strong>em</strong> questão.• domínios abertos (broad domains): é um domínio <strong>em</strong> que a variabilida<strong>de</strong> dasimagens é ilimitado e imprevisível. Em alguns casos a imag<strong>em</strong> é composta <strong>de</strong> vários1 É a diferença entre características <strong>de</strong> baixo nível, extraídas da imag<strong>em</strong>, e o alto nível da informaçãonecessária para o usuário. Ou seja, é a diferença entre o que o usuário necessita e as características extraídasda imag<strong>em</strong> [28].
3.1 <strong>Reconhecimento</strong> <strong>de</strong> <strong>Formas</strong> 32objetos distintos e complica a interpretação do seu conteúdo. Em outros, o conteúdoda imag<strong>em</strong> po<strong>de</strong> ter várias interpretações.As características da imag<strong>em</strong> e os métodos utilizados para recuperar, reconhecere in<strong>de</strong>xar essas imagens, <strong>de</strong>pen<strong>de</strong>m diretamente do domínio da aplicação <strong>de</strong>senvolvida.Para o reconhecimento <strong>de</strong> esboços feitos pelo usuário, o foco do reconhecimento é dadona forma do esboço <strong>de</strong>senhado. Informações como cor e textura não são relevantes duranteo processo <strong>de</strong> reconhecimento.3.1 <strong>Reconhecimento</strong> <strong>de</strong> <strong>Formas</strong>A forma é um atributo chave nas regiões segmentadas <strong>de</strong> imagens, e sua representaçãopossui um papel muito importante <strong>em</strong> todo o processo <strong>de</strong> reconhecimento.Em geral, as representações utilizadas para forma <strong>de</strong> uma imag<strong>em</strong> po<strong>de</strong>m ser divididas<strong>em</strong> dois grupos: baseadas nas bordas (boundary-based) ou baseadas <strong>em</strong> região (regionbased).O primeiro tipo utiliza a informação visual contida na borda externa do objeto,enquanto o segundo tipo utiliza toda a região ocupada pelo objeto [73]. No capítulo 4 éapresentado um estudo mais aprofundado sobre as técnicas utilizadas <strong>em</strong> cada um dosgrupos.Depen<strong>de</strong>ndo da natureza da aplicação, <strong>de</strong>ve-se utilizar representações da formaque sejam invariantes a translação, rotação, escala e espelhamento. Durante o levantamentobibliográfico foram encontrados vários trabalhos relacionados ao reconhecimento<strong>de</strong> formas e reconhecimento <strong>de</strong> esboços, evi<strong>de</strong>nciando a importância <strong>de</strong>ste t<strong>em</strong>a.Em [84] é apresentado um estudo comparativo da performance das representaçõesbaseadas na borda (Chain Co<strong>de</strong>, Fourier Descriptor, UNL Fourier Descriptor), representaçõesbaseadas <strong>em</strong> regiões (Moments Invariants, Zernike Moments, Pseudo-ZernikeMoments) e representações combinadas.Para a i<strong>de</strong>ntificação <strong>de</strong> formas <strong>de</strong>ntro <strong>de</strong> imagens, a segmentação é um processomuito importante. Embora um processo <strong>de</strong> segmentação como o feito pelo cérebrohumano esteja longe <strong>de</strong> ser alcançado, algumas ténicas <strong>de</strong> segmentação po<strong>de</strong>m serencontradas <strong>em</strong> [22]. A segmentação é um processo <strong>de</strong> suma importância no que dizrespeito ao “entendimento” <strong>de</strong> uma imag<strong>em</strong>.Após a <strong>de</strong>tecção das bordas, a forma <strong>de</strong> um objeto po<strong>de</strong> ser i<strong>de</strong>ntificada. Medidascomo área, excentricida<strong>de</strong> (ex: o raio do maior e menor eixo), circularida<strong>de</strong> (ex: proximida<strong>de</strong>do círculo <strong>de</strong> área igual), assinatura da forma (shape signature - uma seqüência <strong>de</strong>distâncias dos pontos das bordas ao centro), curvatura (a velocida<strong>de</strong> <strong>em</strong> que os contornosdas bordas são alterados), entre outros, são frequent<strong>em</strong>ente utilizadas [5].Com a diss<strong>em</strong>inação <strong>de</strong> equipamentos que utilizam tinta digital, uma nova linha<strong>de</strong> pesquisa para o reconhecimento <strong>de</strong> formas t<strong>em</strong> atraído a atenção <strong>de</strong> pesquisadores. A
3.1 <strong>Reconhecimento</strong> <strong>de</strong> <strong>Formas</strong> 33possiblida<strong>de</strong> <strong>de</strong> integrar o reconhecimento <strong>de</strong> esboços e as interfaces <strong>de</strong> usuário v<strong>em</strong> setornando uma tendência nos sist<strong>em</strong>as mo<strong>de</strong>rnos. Nesse sentido, o LADDER [35] ganhougran<strong>de</strong> <strong>de</strong>staque porque foi a primeira linguag<strong>em</strong> para <strong>de</strong>scrição <strong>de</strong> formas. Ele po<strong>de</strong>ser utilizado para <strong>de</strong>screver como formas e grupos <strong>de</strong> formas são <strong>de</strong>senhados, editados eexibidos, e também é o primeiro protótipo impl<strong>em</strong>entado que permite a criação automática<strong>de</strong> uma interface, baseada <strong>em</strong> esboços, a partir da <strong>de</strong>scrição <strong>de</strong>ste domínio [37].Em [34] os criadores do LADDER, apresentam o GUILD, um sist<strong>em</strong>a para gerarautomaticamente as interfaces <strong>de</strong> usuário a partir <strong>de</strong> <strong>de</strong>scrições LADDER. Seu objetivoé permitir que professores cri<strong>em</strong> sist<strong>em</strong>as <strong>de</strong> reconhecimento <strong>de</strong> esboços para ser<strong>em</strong>utilizados <strong>em</strong> sala <strong>de</strong> aula.Outro sist<strong>em</strong>a que trata do reconhecimento <strong>de</strong> esboços é o PaleoSketch [65].Neste sist<strong>em</strong>a praticamente não exist<strong>em</strong> restrições sobre a maneira como o usuário fazseu esboço. Cada traço (conjunto <strong>de</strong> pontos entre os eventos pendown-penup) feito pelousuário é classficado <strong>em</strong> uma das primitivas: linha, múltiplas-linhas, círculo, elipse, arco,curva, espiral e hélice.Em [76], o autor apresenta o método chamado Vertex Representation, que ébaseado na ténica do Chain Co<strong>de</strong>. É um método que analisa a borda do objeto, porémarmazena apenas as alterações <strong>de</strong> direção.Em [8], os autores apresentam um método que utiliza a forma e a textura para oreconhecimento <strong>de</strong> imagens médicas. Ele realiza segmentação baseada na textura, on<strong>de</strong>cada textura distinta é representada por uma classe e os pixels da mesma classe constitu<strong>em</strong>uma região <strong>de</strong> textura homogênea. As características que <strong>de</strong>fin<strong>em</strong> uma imag<strong>em</strong> sãoobtidas extraindo-se, <strong>de</strong> cada uma das regiões homogêneas, as seguintes medidas: o centroda massa da região, a massa da região, dispersão e a média e variância da região. A<strong>de</strong>svantag<strong>em</strong> <strong>de</strong>sse método é o custo elevado para a segmentação.O Biram [59], é um sist<strong>em</strong>a que permite a recuperação <strong>de</strong> imagens por conteúdo.Suporta diversos algoritmos <strong>de</strong> extração <strong>de</strong> características e é focado <strong>em</strong> imagens médicas.A busca por imagens s<strong>em</strong>elhantes é feita da seguinte forma: uma imag<strong>em</strong> fornecidacomo ex<strong>em</strong>plo é processada por um dos algoritmos armazenados, gerando um <strong>de</strong>scritor;<strong>em</strong> seguinda o <strong>de</strong>scritor é comparado com outros <strong>de</strong>scritores armazenados pelo sist<strong>em</strong>a;durante essa compraração, é calculada a distância entre os <strong>de</strong>scritores; os resultados são,então, or<strong>de</strong>nados pelo cálculo da distância <strong>de</strong> seus <strong>de</strong>scritores.Em [67] é apresentada uma técnica para recuperar imagens por região, utilizandoinformações <strong>de</strong> cor, forma e localização. A imag<strong>em</strong> é dividida <strong>em</strong> regiões e, cada região,é in<strong>de</strong>xada a partir das características extraídas da sua cor, forma e disposição dascaracterísticas.No trabalho apresentado <strong>em</strong> [12], saliências <strong>em</strong> um objeto são utilizadas parao reconhecimento e recuperação <strong>de</strong> imagens. A forma <strong>de</strong> um objeto é particionada <strong>em</strong>
3.2 Sist<strong>em</strong>as 34segmentos, <strong>de</strong> acordo com as saliências <strong>de</strong>sse objeto. Cada segmento é analisado ein<strong>de</strong>xado <strong>de</strong> acordo com sua curvatura e sua orientação. Uma vantag<strong>em</strong> do método épermitir a i<strong>de</strong>ntificação <strong>de</strong> objetos parcialmente oclusos.Exist<strong>em</strong> sist<strong>em</strong>as, como o apresentado <strong>em</strong> [46], que aceitam um esboço feitopelo usuário para a recuperação <strong>de</strong> imagens similares (QVE - Query by Visual Example).As bordas das imagens armazenadas são extraídas para ser<strong>em</strong> comparadas ao esboço,utilizando como métrica a correlação entre blocos vizinhos. Cada imag<strong>em</strong> é dividida <strong>em</strong>pequenos blocos e cada um <strong>de</strong>sses blocos é comparado aqueles blocos calculados a partirdo esboço.Em [44] é apresentado um reconhecedor <strong>de</strong> símbolos, <strong>de</strong>senhados pelo usuário,para ser utilizado <strong>em</strong> interfaces baseadas <strong>em</strong> esboço. É um método que utiliza treinamento(trainable syst<strong>em</strong>), ou seja, os símbolos são ajustados aos esboços dos usuários. Cadaum dos símbolos <strong>de</strong>senhados é armazenado internamente como mo<strong>de</strong>los binários. Parasuperar o probl<strong>em</strong>a da invariância à rotação, os mo<strong>de</strong>los binários armazenados comocoor<strong>de</strong>nadas cartesianas são transformados para uma representação <strong>em</strong> coor<strong>de</strong>nadaspolares.Outros trabalhos também merec<strong>em</strong> ser mencionados, entre eles po<strong>de</strong>-se citar astécnicas para recuperação <strong>de</strong> imagens por conteúdo apresentadas <strong>em</strong> [27] e [69], o sist<strong>em</strong>aSOUSA [43] e os métodos para reconhecimentos <strong>de</strong> esboços apresentados <strong>em</strong> [38], [25],[64] e [50].3.2 Sist<strong>em</strong>asEntre os sist<strong>em</strong>as comercias, para recuperação <strong>de</strong> imagens através <strong>de</strong> seu conteúdo,<strong>de</strong> acordo com [74] os mais importantes são:3.2.1 QBICO QBIC (Query By Image Content) é o primeiro sist<strong>em</strong>a comercial para recuperação<strong>de</strong> imagens baseado <strong>em</strong> conteúdo [74]. Foi <strong>de</strong>senvolvido pela IBM 2 (InternationalBusiness Machines) e trata-se <strong>de</strong> um sist<strong>em</strong>a que permite a criação e consultas <strong>em</strong> gran<strong>de</strong>sBancos <strong>de</strong> Dados <strong>de</strong> Imagens baseadas no conteúndo visual das imagens, utilizandocaracterísticas como porcentag<strong>em</strong> <strong>de</strong> cor, layout das cores e texturas que ocorr<strong>em</strong> <strong>de</strong>ntroda imag<strong>em</strong>. Estas consultas utilizam as proprieda<strong>de</strong>s visuais das imagens, <strong>de</strong> maneira queo usuário po<strong>de</strong> combinar cores, texturas e suas posições, s<strong>em</strong> ter que <strong>de</strong>screvê-las textual-2 http://www.ibm.com/us/en/
3.2 Sist<strong>em</strong>as 35mente. As consultas baseadas <strong>em</strong> conteúdo ainda po<strong>de</strong>m ser combinadas com predicadostextuais e palavras-chaves para se obter métodos <strong>de</strong> recuperação mais completos.No sist<strong>em</strong>a QBIC, uma cena é a imag<strong>em</strong> inteira (ou um frame simples <strong>de</strong> ví<strong>de</strong>o)e um objeto é uma parte da cena. Após a i<strong>de</strong>ntificação dos objetos, o QBIC calcula ascaracterísticas <strong>de</strong> cada objeto da imag<strong>em</strong>. Ele utiliza conjuntos <strong>de</strong> características quecapturam a cor, textura e forma das imagens. Suporta duas classes do conteúdo <strong>de</strong> cor:local e global. No QBIC a extração <strong>de</strong> regiões locais (objetos) é feita manualmente, poisrequer uma pessoa para <strong>de</strong>senhar os limites da região usando um mouse. As informaçõesda cor local e global são representadas pela média das cores e o histograma <strong>de</strong> cor.No site do State Hermitage Museum 3 po<strong>de</strong>-se encontrar dois ví<strong>de</strong>os que ilustramo funcionamento <strong>de</strong>ste sist<strong>em</strong>a: ele interpreta a tela <strong>de</strong> <strong>de</strong>senho como uma gra<strong>de</strong> <strong>de</strong>áreas coloridas e, <strong>em</strong> seguida, busca imagens que possuam cores correspon<strong>de</strong>ntes à gra<strong>de</strong>inserida durante a consulta. A figura 3.1 ilustra essas <strong>de</strong>mostrações.Figura 3.1: D<strong>em</strong>onstrações da utilização do QBICInfelizmente este sist<strong>em</strong>a não possui mais uma versão <strong>de</strong> <strong>de</strong>monstração(<strong>de</strong>mo) para testes 4 . Mais informações sobre este sist<strong>em</strong>a po<strong>de</strong>m ser encontradas <strong>em</strong>http://wwwqbic.alma<strong>de</strong>n.ibm.com/.3.2.2 VirageO Virage [6] é um sist<strong>em</strong>a comercial para in<strong>de</strong>xação e recuperação <strong>de</strong> imagens.Neste sist<strong>em</strong>a as características visuais da imag<strong>em</strong> são chamadas <strong>de</strong> primitivas. Osusuários são capazes <strong>de</strong> buscar imagens com as seguintes primitivas: Cor (a impressão<strong>de</strong> cor geral da imag<strong>em</strong>), composição (o arranjo espacial das regiões <strong>de</strong> cor na cena),textura (os “padrões” ou “texturas” <strong>de</strong> uma imag<strong>em</strong>) e estrutura (as características <strong>de</strong>forma gerais dos objetos na imag<strong>em</strong>).3 http://www.hermitag<strong>em</strong>useum.org/fcgi-bin/db2www/qbicSearch.mac/qbic?selLang=English4 http://wwwqbic.alma<strong>de</strong>n.ibm.com/NotAvailable.html
3.2 Sist<strong>em</strong>as 36A in<strong>de</strong>xação é realizada após diversas operações <strong>de</strong> pré-processamento, taiscomo, suavizar e enfatizar contrastes. Cada rotina <strong>de</strong> extração primitiva toma umaimag<strong>em</strong> pré-processada e, <strong>de</strong>pen<strong>de</strong>ndo das proprieda<strong>de</strong>s da imag<strong>em</strong>, calcula um conjuntoespecífico <strong>de</strong> dados para aquela primitiva. Um vetor com os dados primitivos computadosé armazenado <strong>em</strong> uma estrutura <strong>de</strong> dados própria para futuras consultas.3.2.3 PhotoBookEm [66], os autores <strong>de</strong>screv<strong>em</strong> o Sist<strong>em</strong>a PhotoBook como um conjunto <strong>de</strong>ferramentas interativas <strong>de</strong> navegação e pesquisa <strong>de</strong> imagens e seqüências <strong>de</strong> imagens,<strong>de</strong>senvolvido pelo MIT Media Lab 5 . Essas ferramentas extra<strong>em</strong> diretamente o conteúdoda imag<strong>em</strong> ao invés <strong>de</strong> <strong>de</strong>pen<strong>de</strong>r <strong>de</strong> anotações textuais.As imagens po<strong>de</strong>m ser pesquisadas <strong>de</strong> três maneiras: pela aparência (distribuição<strong>de</strong> cores), pela estrutura (disposiçao das cores) e pelas proprieda<strong>de</strong>s texturais (texturas).Estas <strong>de</strong>scrições do conteúdo da imag<strong>em</strong> po<strong>de</strong>m ser combinadas entre si, e com as<strong>de</strong>scrições textuais, para proporcionar uma navegação sofisticada e aumentar o po<strong>de</strong>r <strong>de</strong>pesquisa. Em [5] o autor cita algumas aplicações <strong>de</strong>senvolvidas com esta ferramenta,entre elas: sist<strong>em</strong>a para reconhecimento facial, recuperação <strong>de</strong> imag<strong>em</strong> por similarida<strong>de</strong>da textura e anotação s<strong>em</strong>i-automática baseada <strong>em</strong> rótulos fornecidos pelo usuário.3.2.4 VisualSEEkO VisualSEEk [85] é um sist<strong>em</strong>a híbrido que integra in<strong>de</strong>xação <strong>de</strong> imag<strong>em</strong> baseada<strong>em</strong> conteúdo (cor e textura) e <strong>em</strong> proprieda<strong>de</strong>s espaciais (como tamanho, localizaçãoe relações com outras regiões). A integração confia na representação <strong>de</strong> regiões através <strong>de</strong>um conjunto <strong>de</strong> cores. Inicialmente o usuário fornece um conjunto <strong>de</strong> cores para o sist<strong>em</strong>a<strong>de</strong> extração <strong>de</strong> regiões. Em seguida, os conjuntos <strong>de</strong> cores são facilmente in<strong>de</strong>xados paraa recuperação <strong>de</strong> imagens com um conjunto <strong>de</strong> cores s<strong>em</strong>elhantes. Desta forma, as imagenssão comparadas através <strong>de</strong> suas regiões. Além disto, o sist<strong>em</strong>a permite que o usuáriocontrole a seleção das regiões e <strong>de</strong>fina quais parâmetros são mais importantes durante aconsulta por similarida<strong>de</strong>.O projeto do VisualSEEk enfatiza diversos objetivos únicos a fim <strong>de</strong> melhorar arecuperação <strong>de</strong> imagens, como:1. extração automática <strong>de</strong> características e regiões localizadas,2. examina informações e as características espaciais,3. extração <strong>de</strong> características <strong>de</strong> dados compactados,5 http://www.media.mit.edu/
3.3 Conclusão 374. <strong>de</strong>senvolvimento <strong>de</strong> técnicas para in<strong>de</strong>xação e recuperação rápida e5. <strong>de</strong>senvolvimento <strong>de</strong> ferramentas altamente funcionais para o usuário.Este sist<strong>em</strong>a foi <strong>de</strong>senvolvido pela Universida<strong>de</strong> <strong>de</strong> Columbia 6 .3.3 ConclusãoAnalisando estes sist<strong>em</strong>as <strong>de</strong> recuperação <strong>de</strong> imagens, po<strong>de</strong>-se notar que existeuma preocupação crescente quanto ao aumento <strong>de</strong>scontrolado do volume <strong>de</strong> imagensdigitais, <strong>de</strong>vido ao <strong>de</strong>senvolvimento tecnológico e maior acessibilida<strong>de</strong> dos meios. Istot<strong>em</strong> criado uma necessida<strong>de</strong> <strong>de</strong> ferramentas eficientes e efetivas para catalogar, in<strong>de</strong>xar,gerenciar, comprimir e buscar informações visuais <strong>de</strong> maneira automática.O maior probl<strong>em</strong>a <strong>de</strong> um sist<strong>em</strong>a <strong>de</strong> in<strong>de</strong>xação e recuperação <strong>de</strong> imag<strong>em</strong> é a<strong>de</strong>terminação <strong>de</strong> um conjunto <strong>de</strong> características que possa fornecer uma boa performancena classificação das imagens para uma recuperação a<strong>de</strong>quada. A este conjunto <strong>de</strong> características<strong>de</strong>v<strong>em</strong>-se os diferentes tipos <strong>de</strong> sist<strong>em</strong>as encontrados na literatura.Não foi encontrado, no <strong>de</strong>correr do <strong>de</strong>senvolvimento <strong>de</strong>ste trabalho, nenhum sist<strong>em</strong>adirecionado para o reconhecimento <strong>de</strong> formas geométricas contidas <strong>em</strong> fluxogramas.Gran<strong>de</strong> parte das técnicas encontradas utilizam <strong>de</strong>scritores como: histograma <strong>de</strong> intensida<strong>de</strong>da cor, cor, distribuição <strong>de</strong> texturas, disposição <strong>de</strong> cor e forma, saliências dos objetos,localização <strong>de</strong> “cantos”, etc. Infelizmente, como apresentado <strong>em</strong> [25], tais <strong>de</strong>scritoresnão fornec<strong>em</strong> bons resultados quando a entrada são segmentos lineares <strong>de</strong>senhados pelousuário. Nesses casos, informações como cor e textura não estão disponíveis.Apenas o trabalho <strong>de</strong>senvolvido <strong>em</strong> [34] tinha como foco auxiliar professorese alunos <strong>em</strong> sala <strong>de</strong> aula, mas não po<strong>de</strong> ser utilizado por não estar disponível. Destaforma, surge a necessida<strong>de</strong> <strong>de</strong> se <strong>de</strong>senvolver um método simples para o reconhecimento<strong>de</strong> formas geométricas contidas <strong>em</strong> fluxogramas <strong>de</strong>senhados pelo usuário. O métodoproposto está <strong>de</strong>scrito no Capítulo 5.6 http://www.ee.columbia.edu/ln/dvmm/researchProjects/MultimediaIn<strong>de</strong>xing/VisualSEEk/VisualSEEk.htm
Técnicas <strong>de</strong> Representação <strong>de</strong> <strong>Formas</strong>CAPÍTULO 4A forma é uma característica visual muito importante para a <strong>de</strong>scrição e reconhecimento<strong>de</strong> uma imag<strong>em</strong>. Porém, <strong>de</strong>screver o conteúdo <strong>de</strong> uma forma não é uma tarefasimples [41]. Durante o <strong>de</strong>senvolvimento do MPEG-7, seis requisitos foram <strong>de</strong>finidospara <strong>de</strong>scrição <strong>de</strong> uma forma: recuperação precisa, características compactas, ampla aplicabilida<strong>de</strong>,baixa complexida<strong>de</strong> computacional, boa performance <strong>de</strong> recuperação e representaçãohierárquica.Em [41] o autor apresenta uma classificação das técnicas <strong>de</strong> recuperação <strong>de</strong>formas. A Figura 4.1 ilustra esta divisão.Figura 4.1: Métodos para representação <strong>de</strong> formaResumidamente exist<strong>em</strong> dois gran<strong>de</strong>s grupos <strong>de</strong> abordagens: baseada <strong>em</strong> contornoversus a baseada <strong>em</strong> região. Os métodos baseados <strong>em</strong> contorno são os mais populares.Isto porque acredita-se que a capacida<strong>de</strong> humana para discriminar formas seja feitaa partir <strong>de</strong> suas características <strong>de</strong> borda. Além disso, os métodos baseados <strong>em</strong> contornogeralmente envolv<strong>em</strong> menos processamento que os baseados <strong>em</strong> região. Entretanto, tam-
4.1 Baseada no contorno 39bém são mais facilmente afetados por ruídos e variações na forma, pois se utilizam <strong>de</strong>menos informação.Os <strong>de</strong>scritores baseados <strong>em</strong> região são, geralmente, mais robustos e in<strong>de</strong>pen<strong>de</strong>ntesda aplicação. Porém, envolv<strong>em</strong> um maior processamento dos <strong>de</strong>scritores e necessitam<strong>de</strong> mais espaço para armazenamento.4.1 Baseada no contornoExist<strong>em</strong> duas abordagens diferentes para as técnicas baseadas <strong>em</strong> contorno:global e estrutural. Na abordag<strong>em</strong> global a forma não é dividida <strong>em</strong> partes e para <strong>de</strong>screvera forma um vetor <strong>de</strong> característica <strong>de</strong>rivado <strong>de</strong> toda a borda da forma é utilizado. Naabordag<strong>em</strong> estrutural a borda da forma é quebrada <strong>em</strong> segmentos, chamados <strong>de</strong> primitivas,utilizando um critério próprio para cada tipo <strong>de</strong> aplicação. O resultado <strong>de</strong>sta técnica é umastring ou um grafo <strong>de</strong>screvendo a forma.4.1.1 Métodos globaisMétodos globais para representação do contorno <strong>de</strong> uma forma geralmente computamum vetor <strong>de</strong> características multidimensional a partir das informações extraídas daborda. A comparação é feita utilizando distâncias métricas, como a distância Euclidiana.Estes métodos utilizam todo o contorno do objeto para representação e <strong>de</strong>scrição <strong>de</strong> suaforma. Para cada abordag<strong>em</strong> há s<strong>em</strong>pre uma troca entre eficiência e precisão. Por um lado,a forma <strong>de</strong>ve ser <strong>de</strong>scrita da maneira mais precisa possível; por outro lado, a <strong>de</strong>scrição<strong>de</strong>ve ser a mais compacta possível para facilitar a busca e a comparação. Descritores globaissão compactos, porém, são menos precisos. Eles po<strong>de</strong>m ser combinados com outros<strong>de</strong>scritores <strong>de</strong> forma para criar <strong>de</strong>scritores úteis <strong>de</strong>ntro <strong>de</strong> um cenário prático.Descritores <strong>de</strong> forma simplesOs <strong>de</strong>scritores globais mais simples para representar uma forma são: área,circularida<strong>de</strong> (perímetro/área), ecentricida<strong>de</strong> (eixo maior/eixo menor), orientação do eixomaior e ”bending energy”. Devido a simplicida<strong>de</strong> <strong>de</strong>sses <strong>de</strong>scritores eles serv<strong>em</strong> apenaspara diferenciar formas com gran<strong>de</strong>s dissimilarida<strong>de</strong>s, por isso eles são normalmenteutilizados para filtrag<strong>em</strong> ou combinados com outros <strong>de</strong>scritores para diferenciar entreas formas. Se utilizados sozinhos, não oferec<strong>em</strong> bons resultados.Assinatura da formaEste método representa uma forma como uma função uni-dimensional <strong>de</strong>rivadaa partir dos pontos <strong>de</strong> sua borda. Exist<strong>em</strong> vários tipos <strong>de</strong> assinaturas: coor<strong>de</strong>nadas com-
4.1 Baseada no contorno 40plexas (complex coodinates), coor<strong>de</strong>nadas polares (polar coordinates), distância central(central distance), ângulo tangente (tangent angle), ângulo cumulativo (cumulative angle),curvatura (curvature), área e “chord-length”. Em [62] é apresentado um estudo sobreo assunto.A gran<strong>de</strong> vantag<strong>em</strong> <strong>de</strong>sta técnica é que são, geralmente, invariantes à translaçãoe à escala. E a gran<strong>de</strong> <strong>de</strong>svantag<strong>em</strong> é que são muito sensíveis aos ruídos, pequenasalterações na borda po<strong>de</strong>m causar gran<strong>de</strong>s diferenças durante a comparação.Boundary MomentsSão utilizados para reduzir a dimensão da representação das bordas. Em [87],esta técnica é <strong>de</strong>scrita <strong>em</strong> mais <strong>de</strong>talhes.Elastic matchingEm [13] é proposta o elastic matching para a recuperação <strong>de</strong> imagens baseadana forma. Nesta técnica um mo<strong>de</strong>lo <strong>de</strong>formável é gerado a partir da soma do mo<strong>de</strong>looriginal e do coeficiente <strong>de</strong> <strong>de</strong>formação. Esta técnica não é a<strong>de</strong>quada para processamentoe recuperação online, <strong>de</strong>vido ao seu custo computacional e a complexida<strong>de</strong> no processo<strong>de</strong> comparação.Stochastic MethodMo<strong>de</strong>los <strong>de</strong> séries t<strong>em</strong>porais e, especialmente, mo<strong>de</strong>lag<strong>em</strong> auto-regressiva (AR)também foram utilizadas para o cálculo dos <strong>de</strong>scritores <strong>de</strong> uma forma [45], [21] , [39] e[80]. Métodos AR envolv<strong>em</strong> operações com matrizes com um custo alto.Scale Space MethodA representação scale space <strong>de</strong> uma forma é criada a partir dos pontos <strong>de</strong> inflexão1 da borda da forma filtrados por um Filtro Gaussiano passa-baixa <strong>de</strong> largura variável.Os pontos <strong>de</strong> inflexão r<strong>em</strong>anescentes são consi<strong>de</strong>rados como pontos "significantes"para<strong>de</strong>scrição da forma. O resultado normalmente é uma árvore, também conhecida como“fingerprint”, contendo apenas os pontos <strong>de</strong> inflexão. A maior dificulda<strong>de</strong> <strong>de</strong>ssa técnicaé a interpretação do resultado final.Em [58] é apresentado o CSS, um método que tenta encontrar a melhor comparaçãoentre dois ramos das árvores <strong>de</strong> comparação dos contornos. Para cada comparação, o1 Os pontos <strong>de</strong> inflexão <strong>de</strong> uma curva são os pontos <strong>em</strong> que a curva passa <strong>de</strong> côncava a convexa, ou <strong>de</strong>convexa a côncava.
4.1 Baseada no contorno 41contorno é redimensionado e rotacionado para ser comparado. O método <strong>de</strong>screve e comparaobjetos ou imagens utilizando o seu contorno fechado. Em [2], o autor afirma que oCSS é confiável e bastante robusto <strong>em</strong> relação a ruído, escala e mudanças <strong>de</strong> orientação.Trasformações espectraisDescritores espectrais superam o probl<strong>em</strong>a <strong>de</strong> sensibilida<strong>de</strong> ao ruído e variaçõesna borda através da análise espectral do domínio da forma. Descritores espectrais inclu<strong>em</strong>Fourier Descriptors (FD) e Wavelet Descriptor (WD), que são geralmente <strong>de</strong>rivados <strong>de</strong>transformações espectrais das assinaturas uni-dimensionais da assinatura da forma. FD éuma das técnicas mais utilizadas até hoje. Referências po<strong>de</strong>m ser encontradas <strong>em</strong> [54],[72] e [56]. Esta técnica se baseia na Teoria <strong>de</strong> Fourier. Suas principais vantagens são:facilida<strong>de</strong> para calcular, cada <strong>de</strong>scritor t<strong>em</strong> um significado específico, facilida<strong>de</strong> <strong>de</strong> normalizarfacilitando a tarefa <strong>de</strong> comparação entre as formas, captura tanto característicasglobais quanto locais. FD também minimiza o efeito dos ruídos. É uma técnica simples<strong>de</strong> impl<strong>em</strong>entar e o <strong>de</strong>scritor resultante é compacto.4.1.2 Métodos EstruturaisNesta abordag<strong>em</strong>, a borda da forma e dividida <strong>em</strong> vários segmentos chamados<strong>de</strong> primitivas. Os diversos métodos existentes difer<strong>em</strong> entre si pela seleção e organizaçãodas primitivas para a representação da forma.A maior vantag<strong>em</strong> <strong>de</strong>sta abordag<strong>em</strong> é a capacida<strong>de</strong> <strong>de</strong> lidar com probl<strong>em</strong>as <strong>de</strong>oclusão e permitir comparação parcial. Porém possu<strong>em</strong> uma série <strong>de</strong> <strong>de</strong>svantagens [41]:• a geração <strong>de</strong> primitivas e características. Não existe uma <strong>de</strong>finição formal do queseria a ”forma” <strong>de</strong> um objeto, logo a quantida<strong>de</strong> <strong>de</strong> primitivas necessárias para<strong>de</strong>finir cada forma é <strong>de</strong>sconhecida• não captura características globais da forma que, frequent<strong>em</strong>ente, são importantespara representação e reconhecimento da forma• falta <strong>de</strong> robustez. Isto porque os métodos estruturais não preservam a estrutura doobjeto, logo variações nas extr<strong>em</strong>ida<strong>de</strong>s do objeto causam mudanças significativasna sua estrutura.Representação Chain-Co<strong>de</strong>Também conhecida com Fre<strong>em</strong>an Co<strong>de</strong>, esta técnica foi apresentada inicialmentepor [29] e consiste <strong>em</strong> segmentos <strong>de</strong> linhas sobrepostos <strong>em</strong> uma gra<strong>de</strong> <strong>de</strong> tamanhofixo e um conjunto <strong>de</strong> possíveis orientações. Apenas o ponto incial é representado
4.1 Baseada no contorno 42pela sua localização; todos os <strong>de</strong>mais pontos na curva são representados por sucessivos<strong>de</strong>slocamentos ponto a ponto na gra<strong>de</strong> através da curva.Esta técnica <strong>de</strong>screve um objeto como um sequência <strong>de</strong> segmentos lineares comuma orientação específica. Nesta abordag<strong>em</strong>, uma curva arbitrária é representada poruma sequência <strong>de</strong> pequenos vetores <strong>de</strong> tamanhos unitários e um conjunto limitado <strong>de</strong>possíveis direções. Para sua impl<strong>em</strong>entação, um grid (ou gra<strong>de</strong>) é sobreposto à imag<strong>em</strong> eos pontos da borda são aproximados para os pontos da gra<strong>de</strong> mais próximos para formarsua representação.Chain Co<strong>de</strong> é uma técnica utilizada para representar formas e contornos, poispermite consi<strong>de</strong>rável redução na <strong>de</strong>scrição das formas [51]. Este código (co<strong>de</strong>) se moveatravés <strong>de</strong> uma curva digital ou uma sequência <strong>de</strong> pixels <strong>de</strong> borda baseado na suaconectivida<strong>de</strong>, que po<strong>de</strong> ser <strong>de</strong> 4 (quatro) ou 8 (oito) conectivida<strong>de</strong>s.Utilizando a conectivida<strong>de</strong> 4, t<strong>em</strong>os 4 possíveis direções i<strong>de</strong>ntificadas <strong>de</strong> {i|i =0,1,2,3}, <strong>de</strong>notando um ângulo <strong>de</strong> 90 o entre cada uma das direções. Caso seja utilizada aconectivida<strong>de</strong> 8, t<strong>em</strong>os 8 possíveis direções numeradas {i|i = 0,1,2,3,4,5,6,7}, <strong>de</strong>notandoum ângulo <strong>de</strong> 45 o entre cada uma das direções. A Figura 4.2 ilustra estas duas opções:Figura 4.2: Conectivida<strong>de</strong>Exist<strong>em</strong> diversas variações e aperfeiçoamentos <strong>de</strong>sta técnica. Entre elas po<strong>de</strong>-secitar os trabalhos <strong>de</strong>senvolvidos por [14], [76], [20] e [51].As principais vantagens <strong>de</strong>sse método são: preserva a informação, permiteconsi<strong>de</strong>rável redução <strong>de</strong> dados e é invariante a translação. Por outro lado, suas principais<strong>de</strong>svantagens são: a codificação é <strong>de</strong>pen<strong>de</strong>nte do ponto incial, não é invariante a rotaçãoe não é invariante a transformação do tipo espelhamento.
4.1 Baseada no contorno 43Polygon DecompositionEm [33], a borda da forma é quebrada <strong>em</strong> segmentos lineares através da aproximaçãopoligonal. Os vértices do polígono são utilizados como primitivas. As característicaspara cada primitiva são expressas como uma string <strong>de</strong> quatro el<strong>em</strong>entos: o ângulointerno, distância para o próximo vértice, e as coor<strong>de</strong>nadas x e y. Desta forma esta característicanão é invariante quanto a translação, escala e rotação. As características sãoentão organizadas <strong>em</strong> uma estrutura <strong>de</strong> árvore.O matching entre as formas é feito <strong>em</strong> duas etapas: característica-a-característicana primeira etapa e mo<strong>de</strong>lo-a-mo<strong>de</strong>lo (forma-a-forma) na segunda etapa. No primeiropasso, dado um conjunto <strong>de</strong> características <strong>de</strong> uma forma, cada característica é procurada<strong>de</strong>ntro da árvore <strong>de</strong> índice. Se um mo<strong>de</strong>lo similar for encontrado, uma lista com as formasassociadas a esse mo<strong>de</strong>lo é recuperada. No segundo passo, a comparação é feita entrea forma <strong>de</strong> consulta e a lista recuperada através da comparação entre suas strings <strong>de</strong>primitivas.Smooth curve <strong>de</strong>compositionEm [12], os pontos <strong>de</strong> curvatura obtidos através das bordas suavizadas pelosfiltros Gaussianos são utilizados para obtenção das primitivas chamadas tokens. A característicapara cada token é a curvatura máxima e a orientação, e a similarida<strong>de</strong> entre doistokens é medida através da distância Euclidiana. Como a característica inclui a orientaçãoda curva, esta técnica não é invariante quanto à rotação.Dada uma forma para consulta, a recuperação ocorre <strong>em</strong> duas etapas. O primeiropasso é a recuperação do token: para cada um dos N tokens presentes na forma <strong>de</strong>consulta, os tokens similares são encontrados percorrendo a árvore <strong>de</strong> índices N vezes. Oconjunto <strong>de</strong> tokens recuperados possuindo os mesmos i<strong>de</strong>ntificadores formam o conjunto<strong>de</strong> candidatas. O segundo passo é comparar a forma <strong>de</strong> consulta e as formas candidatasatravés <strong>de</strong> um algoritmo que compara todos os tokens das duas formas.A eficiência do processo <strong>de</strong> comparação <strong>de</strong>pen<strong>de</strong> do número <strong>de</strong> tokens utilizadospor cada forma.Curvature-tuned SmoothingNesta abordag<strong>em</strong>, as primitivas são obtidas a partir da técnica <strong>de</strong> "curvaturetunedsmoothing", obtendo um conjunto <strong>de</strong> segmentos. Cada <strong>de</strong>scritor <strong>de</strong> segmento possuiseu comprimento, posição ordinal e ajuste <strong>de</strong> curvatura, obtidos a partir <strong>de</strong> cada umadas primitivas. Então uma string <strong>de</strong> <strong>de</strong>scritores <strong>de</strong> segmentos é formada para <strong>de</strong>screvera forma. A comparação é feita através da utilização <strong>de</strong> um algoritmo <strong>de</strong> programaçãodinâmica.
4.1 Baseada no contorno 44Syntatic AnalysisEste método é inspirado no fato <strong>de</strong> que a composição natural <strong>de</strong> um cenárioé análogo à composição <strong>de</strong> uma linguag<strong>em</strong>, isto é, sentenças são formadas por frases,frases são formadas por palavras e palavras são formadas por alfabetos [16]. Nessesmétodos, a forma é representada por um conjunto <strong>de</strong> primitivas pré-<strong>de</strong>finidas. Esteconjunto <strong>de</strong> primitivas pré-<strong>de</strong>finidas é chamado <strong>de</strong> co<strong>de</strong>book e as primitivas são chamadas<strong>de</strong> co<strong>de</strong>words. Por ex<strong>em</strong>plo, as co<strong>de</strong>words no lado direito da Figura 4.3 , forma presenteno lado esquerdo da Figura 4.3 po<strong>de</strong>ria ser representada da seguinte maneira: S =”dbabcbabdbabcbab”.Figura 4.3: Syntatic AnalysisA comparação entre as formas é feita a partir da comparação <strong>de</strong> strings, encontrandoo menor número <strong>de</strong> alterações para converter uma string na outra.Estas técnicas são baseadas na teoria da Linguag<strong>em</strong> Formal <strong>de</strong>senvolvida porChomsky 2 .Shape invariantsShape Invariants representam uma forma como um conjunto <strong>de</strong> primitivasbaseadas nas informações extraídas a partir <strong>de</strong> sua borda. As invariantes são nomeadas<strong>de</strong> acordo com o número <strong>de</strong> características utilizadas para sua <strong>de</strong>finição. Uma invariante<strong>de</strong> or<strong>de</strong>m um é <strong>de</strong>finida com uma única característica: invariante unária; uma invariante<strong>de</strong> or<strong>de</strong>m dois é <strong>de</strong>finida com duas características: invariante binária; e assim por diante.[87]Invariantes po<strong>de</strong>m ser: geométricas (cross-ratio, length-ratio, distance ratio, ângulo,área, triângulo, pontos coplanares), algébricas (<strong>de</strong>terminante, eigenvalues, trace) e2 http://www.chomsky.info/
4.2 Baseada na região 45diferenciais (curvatura, torção e Curvatura Gaussiana). Invariantes geométricas e algébricassão úteis <strong>em</strong> contextos on<strong>de</strong> as bordas po<strong>de</strong>m ser representadas por linhas retas oucurvas algébricas. Caso contrário, invariantes diferenciais <strong>de</strong>v<strong>em</strong> ser utilizadas.4.2 Baseada na regiãoNos métodos baseados <strong>em</strong> região, todos os pixels <strong>de</strong>ntro da região ocupada pelaimag<strong>em</strong> são consi<strong>de</strong>rados durante o processo <strong>de</strong> representação da forma.4.2.1 Métodos GlobaisMétodos globais consi<strong>de</strong>ram a forma integralmente e sua representação é feitacom um vetor <strong>de</strong> características numérico que po<strong>de</strong> ser utilizado para <strong>de</strong>screver a forma.Estes métodos me<strong>de</strong>m a distribuição dos pixels <strong>de</strong>ntro da região ocupada pelaforma, diminuindo assim o efeito do ruído e suas variações.Geometric Moment InvariantsEm [42] foi publicado o primeiro trabalho sobre a utilização <strong>de</strong> Geométric MomentsInvariants (Momentos Geométricos Invariantes) para o reconhecimento <strong>de</strong> padrõesbidimensionais. Utilizando combinações não-lineares <strong>de</strong> momentos <strong>de</strong> baixa or<strong>de</strong>m, umconjunto <strong>de</strong> momentos invariantes também chamados <strong>de</strong> momentos geométricos, os quaispossu<strong>em</strong> as proprieda<strong>de</strong>s <strong>de</strong> ser<strong>em</strong> invariantes a translação, rotação e escala, po<strong>de</strong>m serrecuperados.O maior probl<strong>em</strong>a <strong>de</strong>ste método é que invariantes <strong>de</strong> or<strong>de</strong>m mais alta são difíceis<strong>de</strong> <strong>de</strong>rivar e exist<strong>em</strong> poucas invariantes <strong>de</strong>rivadas a partir <strong>de</strong> momentos <strong>de</strong> baixa or<strong>de</strong>m,não sendo suficient<strong>em</strong>ente precisos para <strong>de</strong>screver uma forma.Grid Based MethodDescritores <strong>de</strong> forma baseados <strong>em</strong> gra<strong>de</strong> foram propostos <strong>em</strong> [53]. Basicamente,um grid com um número <strong>de</strong>terminado <strong>de</strong> células é sobreposto à imag<strong>em</strong> e percorrido daesquerda para direita e <strong>de</strong> cima para baixo. O resultado é um bitmap. As células cobertaspela forma receb<strong>em</strong> valor 1 (um) e as <strong>de</strong>mais valor 0 (zero). A forma po<strong>de</strong>, então, serrepresentada com um vetor <strong>de</strong> características binário. Para medir a similarida<strong>de</strong> entreduas formas po<strong>de</strong>mos utilizar as técnicas <strong>de</strong> Binary Hamming distance ou block distance.Para tratar a translação, rotação e a escala, a forma primeiro é normalizada antes <strong>de</strong> serlida. A forma é redimensionada <strong>de</strong>ntro <strong>de</strong> um retângulo <strong>de</strong> tamanho fixo, <strong>de</strong>slocada para ocanto superior esquerdo <strong>de</strong>ste retângulo e rotacionada <strong>de</strong> forma que o eixo maior da formafique na horizontal. Figuras espelhadas e invertidas <strong>de</strong>v<strong>em</strong> ser tratadas separadamente.
4.2 Baseada na região 46As principais vantagens <strong>de</strong>sta abordag<strong>em</strong> são sua simplicida<strong>de</strong> <strong>de</strong> representação,conformida<strong>de</strong> com a intuição humana, e a concordância com a codificação da forma utilizadano MPEG-4. No entanto, sua principal <strong>de</strong>svantag<strong>em</strong> é o alto custo computacional.Shape MatrixOs métodos tradicionais para tratamento <strong>de</strong> formas utilizam um grid para obteras informações necessárias. Isso gera representações que normalmente não são invariantesquanto a escala, rotação e translação. Logo um processo extra <strong>de</strong> normalização se tornanecessário. Em [32] o autor propôs uma matriz <strong>de</strong> forma circular (cicurlar shape matrix).A i<strong>de</strong>ia é a mesma do grid tradicional, porém ao invés <strong>de</strong> sobrepor uma matrizquadrada sobre a imag<strong>em</strong>, é utilizado um raster polar <strong>de</strong> círculos concêntricos comlinhas radiais partindo do centro <strong>de</strong> massa da imag<strong>em</strong>. O valor binário representando aforma é extraído das interseções entre os círculos e as linhas radiais. A shape matrix éformada <strong>de</strong> maneira que os círculos correspondam às colunas da matriz e as linhas radiaiscorrespondam às linhas da matriz. A matriz da forma resultante é invariante a translação,rotação e escala.Infelizmente este método é bastante sensível ao ruídos pois a matriz resultante daforma é muito esparsa. Além da comparação entre duas formas ser computacionalmentecara.4.2.2 Métodos EstruturaisOs métodos estruturais baseados <strong>em</strong> região <strong>de</strong>compõ<strong>em</strong> a forma <strong>em</strong> partes , subregiões,que são utilizadas para representar e <strong>de</strong>screver a forma.Convex HullUma região R é convexa se, e somente se, para dois pontos x1,x2 ∈ R, toda linhaligando x1 e x2 estiver contida <strong>de</strong>ntro <strong>de</strong> R. O convex hull <strong>de</strong> uma região é a menor regiãoconvexa H que satisfaça a condição R ⊂ H. Em outras palavras, objetivo é <strong>de</strong>terminar omenor polígono que englobe um <strong>de</strong>terminado conjunto <strong>de</strong> pontos. A Figura 4.4 ilustra oprocesso <strong>de</strong> segmentação utilizado neste método:
4.3 Conclusão 47Figura 4.4: Convex Hull - (adaptado <strong>de</strong> [41])As bordas da forma ten<strong>de</strong>m a ser irregulares <strong>de</strong>vido ao processo <strong>de</strong> digitalização,ruído e variações na sua segmentação, o que normalmente resulta <strong>em</strong> uma <strong>de</strong>ficiênciaconvexa que t<strong>em</strong> um pequeno componente influenciando as bordas.Medial AxisAssim como o método Convex Hull, um esqueleto da região po<strong>de</strong> ser utilizadopara representar e <strong>de</strong>screver a forma. O esqueleto po<strong>de</strong> ser <strong>de</strong>finido como um conjunto<strong>de</strong> linhas ao longo <strong>de</strong> todos os el<strong>em</strong>entos da imag<strong>em</strong> [23]. A idéia básica do esqueleto éeliminar informações redundantes e preservar apenas as informações topológicas sobrea estrutura do objeto que favoreçam o processo <strong>de</strong> reconhecimento. Os métodos <strong>de</strong>squeleton são representados pelos métodos <strong>de</strong> medial axis transformation.4.3 ConclusãoNeste capítulo foram apresentadas algumas técnicas utlizadas para a representação<strong>de</strong> formas. Dentro do escopo <strong>de</strong>ste projeto, o esboço <strong>de</strong>senhado pelo usuário nadamais é do que um contorno da forma geométrica contida <strong>de</strong>ntro <strong>de</strong> um fluxograma. Parao reconhecimento <strong>de</strong>sta forma geométrica, a informação extraída a partir <strong>de</strong> sua borda é<strong>de</strong> vital importância.Para a extração <strong>de</strong> características <strong>de</strong> um esboço feito pelo usuário, utilizandotinta digital, as técnicas mais a<strong>de</strong>quadas são aquelas baseadas no contorno da imag<strong>em</strong>.Isto ocorre porque o <strong>de</strong>senho contém apenas o controno no objeto.Dentro <strong>de</strong>ste conjunto <strong>de</strong> técnicas baseadas no contorno, foi escolhida a técnica<strong>de</strong> Chain Co<strong>de</strong> como base para o método proposto. Sua escolha se justifica por causa <strong>de</strong>suas vantagens previamente apresentadas, tais como: redução e preservação dos dados,e por ser uma técnica com baixa complexida<strong>de</strong> <strong>de</strong> impl<strong>em</strong>entação. Suas <strong>de</strong>svantagens elimitações, para o reconhecimento <strong>de</strong> formas, serão superadas com a utilização <strong>de</strong> outrascaracterísticas extraídas a partir do esboço <strong>de</strong>senhado (ver Seção 5.7.4).
O ProjetoCAPÍTULO 5Processar uma imag<strong>em</strong> consiste <strong>em</strong> transformá-la, sucessivamente, com o objetivo<strong>de</strong> extrair a informação nela presente que seja relevante à aplicação. Há t<strong>em</strong>possabe-se que uma imag<strong>em</strong> po<strong>de</strong> representar i<strong>de</strong>ias, ações, sentimentos até melhor do quepalavras [77]. A informação tida como relevante <strong>de</strong>pen<strong>de</strong> diretamente da aplicação que aestá manipulando.Reconhecer um esboço feito, manualmente, pelo usuário é equivalente a buscarformas que sejam, <strong>em</strong> algum critério, similares ao esboço feito.Trabalhar diretamente com uma imag<strong>em</strong> para in<strong>de</strong>xação e recuperação é muitocaro computacionalmente, logo a extração <strong>de</strong> características que <strong>de</strong>finam a imag<strong>em</strong> e arepresent<strong>em</strong> <strong>em</strong> uma forma mais compacta se torna necessário. Elaborar sist<strong>em</strong>as CBIR,que sejam rápidos e eficientes, é uma tarefa <strong>de</strong>safiadora, e pesquisadores frequent<strong>em</strong>ente<strong>de</strong>v<strong>em</strong> escolher entre performance ou precisão [48].De acordo com [18], uma das características mais importantes para a representaçãodo conteúdo visual <strong>de</strong> uma imag<strong>em</strong> é a forma do objeto. Infelizmente, como exposto<strong>em</strong> [89], não existe uma <strong>de</strong>finição universal sobre o que é uma forma. Desta maneira,neste trabalho vamos consi<strong>de</strong>rar a forma como algo geométrico, contendo um conjunto<strong>de</strong> pontos, linhas e curvas. Logo, como apresentado na Seção 1.2, a proposta <strong>de</strong>ste trabalhoé tratar o reconhecimento <strong>de</strong> imagens pelo seu conteúdo utilizando a forma do objeto.Informações como cores e textura não foram utilizadas pois, no contexto <strong>de</strong>sta aplicação,não trariam ganhos durante o processo <strong>de</strong> reconhecimento.5.1 O SketchTambém conhecido como esboço, ou rascunho, é um <strong>de</strong>senho feito pelo própriousuário do sist<strong>em</strong>a. São imagens informais criadas manualmente com o intuito <strong>de</strong> resolverum <strong>de</strong>terminado probl<strong>em</strong>a ou ilustrar alguma situação. Po<strong>de</strong> ser feito <strong>de</strong> várias maneirasdiferentes, variando <strong>de</strong> pessoa para pessoa. Isto é, assim como na escrita, cada pessoa t<strong>em</strong>características particulares que se reflet<strong>em</strong> no esboço. Além disso, o esboço está sujeito
5.1 O Sketch 49a ruídos, que surg<strong>em</strong> da inabilida<strong>de</strong> da pessoa <strong>em</strong> <strong>de</strong>senhar com precisão linhas retas ecurvas.A principal vantag<strong>em</strong> na utilização <strong>de</strong> esboços é permitir uma comunicaçãomais natural entre o hom<strong>em</strong> e os sist<strong>em</strong>as computacionais [65] e, por isso, t<strong>em</strong> ganhadopopularida<strong>de</strong> como meio <strong>de</strong> interação nas interfaces com o usuário.A Figura 5.1 ex<strong>em</strong>plifica alguns ex<strong>em</strong>plos <strong>de</strong> esboços. Nela estão repesentadostrês ex<strong>em</strong>plos <strong>de</strong> três possíveis formas <strong>de</strong> esboços: quadrado, triângulo e círculo, respectivamente.Figura 5.1: Ex<strong>em</strong>plos <strong>de</strong> esboçosComo o esboço é feito manualmente, e cada pessoa t<strong>em</strong> uma forma <strong>de</strong> <strong>de</strong>senhar,o reconhecimento <strong>de</strong> esboços não é uma tarefa fácil. Uma maneira <strong>de</strong> amenizar esteprobl<strong>em</strong>a é restringir a liberda<strong>de</strong> no esboço exigindo que restrições sejam aplicadas ao<strong>de</strong>senho, tornando sua interpretação menos complexa [3].De acordo com [38], o reconhecimento <strong>de</strong> esboços é o entendimento automático<strong>de</strong> uma entrada fornecida manualmente através <strong>de</strong> tinta eletrônica. As técnicas para oreconhecimento <strong>de</strong> esboços se divi<strong>de</strong>m <strong>em</strong> duas categorias:• baseada <strong>em</strong> gestos (gesture-based): permit<strong>em</strong> alta-precisão, mas exig<strong>em</strong> que ousuário aprenda um estilo particular <strong>de</strong> <strong>de</strong>senho para que as formas sejam reconhecidas.• <strong>de</strong>senho livre (free-sketch): permit<strong>em</strong> que o usuário <strong>de</strong>senhe formas como <strong>de</strong>senharianaturalmente, mas infelizmente a maioria <strong>de</strong>ssas técnicas possui baixa precisãoou exig<strong>em</strong> muitas restrições para ser<strong>em</strong> úteis.No reconhecimento baseado <strong>em</strong> gestos, os usuários <strong>de</strong>v<strong>em</strong> apren<strong>de</strong>r a <strong>de</strong>senharcada símbolo, pois a or<strong>de</strong>m, a direção e o número <strong>de</strong> traços (strokes) são <strong>de</strong>terminantes
5.2 Escopo do projeto 50para o processo <strong>de</strong> reconhecimento. A velocida<strong>de</strong>, as direções inicial e final, e a rotaçãodos traços também são utilizados para o reconhecimento. A gran<strong>de</strong> vantag<strong>em</strong> é que nocaso do usuário <strong>de</strong>senhar as formas como foram <strong>de</strong>finidas, a taxa <strong>de</strong> reconhecimento po<strong>de</strong>ser alta. A <strong>de</strong>svantag<strong>em</strong> é que o usúário t<strong>em</strong> que apren<strong>de</strong>r como <strong>de</strong>senhar cada forma.Quando o reconhecimento <strong>de</strong> <strong>de</strong>senho livre é utilizado, os usuários po<strong>de</strong>m<strong>de</strong>senhar como <strong>de</strong>senhariam naturalmente. A vantag<strong>em</strong> <strong>de</strong>sta abordag<strong>em</strong> é permitirque o usuário <strong>de</strong>senhe livr<strong>em</strong>ente, s<strong>em</strong> restrições. A <strong>de</strong>svantag<strong>em</strong> é que a taxa <strong>de</strong>reconhecimento é mo<strong>de</strong>sta. Devido a esta limitação, os sist<strong>em</strong>as <strong>de</strong> <strong>de</strong>senho livre buscamuma abordag<strong>em</strong> intermediária, liberando algums restrições e mantendo outras.Consi<strong>de</strong>re as duas formas presentes na Figura 5.2. Se o reconhecimento porgestos é utilizado, elas são consi<strong>de</strong>radas como formas distintas. Por outro lado, quandoreconhecimento <strong>de</strong> estilo livre é utilizado elas são consi<strong>de</strong>radas como formas similares.Figura 5.2: <strong>Formas</strong>O método proposto utiliza uma abordag<strong>em</strong> mista, ou seja, permite que o usuário<strong>de</strong>senhe naturalmente, porém algumas restrições são impostas. Nas seções seguintes, esteassunto será abordado com mais <strong>de</strong>talhes.5.2 Escopo do projetoO ambiente proposto permite o reconhecimento <strong>de</strong> esboços <strong>de</strong> formas contidas<strong>em</strong> fluxogramas utilizando tinta digital. Dentro do cenário proposto na introdução <strong>de</strong>stetrabalho, o sist<strong>em</strong>a aqui <strong>de</strong>senvolvido <strong>de</strong>ve ser capaz <strong>de</strong> i<strong>de</strong>ntificar e reconhecer formasgeométricas presentes <strong>em</strong> fluxogramas. Este trabalho é parte <strong>de</strong> um trabalho maior quepreten<strong>de</strong> reconhecer e gerar código fonte automaticamente a partir <strong>de</strong> um fluxograma<strong>de</strong>senhado pelo usuário. Como ex<strong>em</strong>plos t<strong>em</strong>os as imagens presentes na Figura 5.3.
5.3 Tinta Digital 51Figura 5.3: Ex<strong>em</strong>plos <strong>de</strong> imagensO método utilizado para o reconhecimento <strong>de</strong>ve ser capaz <strong>de</strong> i<strong>de</strong>ntificar imagenscontendo apenas objetos simples/singulares, ou seja, apenas um único objeto <strong>em</strong> seuinterior e que possuam forma fechada. Esta restrião é feita porque a segmentação dofluxograma esta fora do escopo <strong>de</strong>ste projeto, e será tratada <strong>em</strong> um Trabalho Futuro.Caso se queira utilizar imagens mais complexas, com mais <strong>de</strong> um objeto <strong>em</strong> seucontexto, torna-se necessário aplicar um método <strong>de</strong> segmentação que seja mais a<strong>de</strong>quadopara o domínio da aplicação.5.3 Tinta DigitalA utilização <strong>de</strong> tinta digital amplia as possibilida<strong>de</strong>s <strong>de</strong> interação hom<strong>em</strong>máquina.Ter a liberda<strong>de</strong> <strong>de</strong> escrever e <strong>de</strong>senhar diretamente na tela torna algumas aplicaçõesmuito mais atrativas para seus usuários. Aplicações que utilizam esta tecnologiasão, geralmente, mais intuitivas.De acordo com [68], duas abordagens po<strong>de</strong>m ser utilizadas para extrair informaçõesdo esboço feito pelo usuário: uma baseada nos traços (stroke-based), e outra baseadana imag<strong>em</strong> (image-based). Na primeira abordag<strong>em</strong>, as informações são extraídas <strong>de</strong> cadastroke individualmente, enquanto na segunda abordag<strong>em</strong> o conjunto <strong>de</strong> strokes é agrupado<strong>em</strong> uma única imag<strong>em</strong>, a partir da qual as informações são extraídas.Inicialmente, a adordag<strong>em</strong> stroke-based foi adotada, buscando-se extrair o máximo<strong>de</strong> informação a partir dos dados capturados diretamente dos strokes: a extração dasinformações é feita no nível dos strokes e as características extraídas são agrupadas duranteo processo <strong>de</strong> recohecimento. Infelizmente a utilização <strong>de</strong>sta abordag<strong>em</strong> não trouxeganhos significativos para o método <strong>de</strong> reconhecimento. Os principais probl<strong>em</strong>as encontradosforam:• a utilização <strong>de</strong> strokes é muito local, ou seja, prejudica a interpretação <strong>de</strong> característicasglobais da forma,• imprevisibilida<strong>de</strong> da forma como um usuário po<strong>de</strong> <strong>de</strong>senhar,• maior complexida<strong>de</strong> para interpretação e reconhecimento da forma.
5.3 Tinta Digital 52Na Figura 5.4 t<strong>em</strong>os 3 ex<strong>em</strong>plos que ilustram esses probl<strong>em</strong>as. Na Figura 5.4-(A) t<strong>em</strong>os um possível <strong>de</strong>senho <strong>de</strong> um quadrado feito pelo usuário. Na Figura 5.4-(B)foram utilizado dois strokes para fazer a base do quadrado e na Figura 5.4-(C) foramutilizados dois segmentos <strong>de</strong> strokes para representar um único segmento lógico. Paraextrair informações diretamente dos strokes, seria necessário um pré-processamento sobreestes strokes. A i<strong>de</strong>ia do método é permitir que o usuário <strong>de</strong>senhe livr<strong>em</strong>ente. Mas comoprever como o <strong>de</strong>senho será feito? Um lado do quadrado po<strong>de</strong> ser feito com um únicostroke (Figura 5.4-(A)), com vários strokes sobrepostos (Figura 5.4-(B)), ou como umasequência <strong>de</strong> strokes (Figura 5.4-(C)).Figura 5.4: Utilização da tintaAlgumas vezes dois ou mais segmentos lógicos/s<strong>em</strong>ânticos po<strong>de</strong>m ser representadospor um único ”stroke”, ou seja, o sist<strong>em</strong>a <strong>de</strong>ve fazer um pré-processamento nessesstrokes para interpretar este tipo <strong>de</strong> comportamento. Em outros casos, como na Figura 5.4-(C) mais <strong>de</strong> um stroke é utilizado para representar um mesmo segmento lógico, neste casoum dos lados <strong>de</strong> um quadrado. Diferenciar estes dois strokes representando um único objetoe dois strokes representando dois objetos distintos é uma tarefa complexa. Por último,t<strong>em</strong>os o caso presente na Figura 5.4-(B) <strong>em</strong> que vários strokes <strong>de</strong>veriam ser combinados<strong>em</strong> um para a correta interpretação. Nesses casos técnicas mais complexas seriam necessárias.Sendo assim, a abordag<strong>em</strong> stroke-based tornou o processo <strong>de</strong> extração <strong>de</strong> característicasmais complexo, inviabilizando sua utilização no sist<strong>em</strong>a proposto. Este restultadotambém foi confirmado no trabalho apresentado <strong>em</strong> [68].Devido a dificulda<strong>de</strong> <strong>de</strong> trabalhar diretamente no nível dos strokes, foi adotadaa abordag<strong>em</strong> image-based. Tratar os vários strokes como uma imag<strong>em</strong> única, e não umconjunto <strong>de</strong> traços individuais, mostrou-se mais viável.Nesta nova abordag<strong>em</strong>, o primeiro passo é converter a informação, obtida datinta, <strong>em</strong> uma imag<strong>em</strong> binária. Uma maneira <strong>de</strong> realizar esta conversão é sobrepor umagra<strong>de</strong> <strong>de</strong> pixels sobre a imag<strong>em</strong>, marcar os pixels que for<strong>em</strong> cobertos pela tinta digital enão marcar os que não se sobrepõ<strong>em</strong> a tinta. Este processo po<strong>de</strong> ser visto na Figura 5.5:
5.4 O <strong>Reconhecimento</strong> das <strong>Formas</strong> 53Figura 5.5: Transformação da tinta para imag<strong>em</strong> bináriaApós esta conversão, o método po<strong>de</strong> ser aplicado diretamente sobre a imag<strong>em</strong> eas informações necessários para o reconhecimento da forma po<strong>de</strong>m ser extraídas.5.4 O <strong>Reconhecimento</strong> das <strong>Formas</strong>O reconhecimento é o processo no qual o usuário po<strong>de</strong> especificar sua necessida<strong>de</strong><strong>de</strong> informação, ou seja, <strong>de</strong>senhar um esboço livr<strong>em</strong>ente, e o sist<strong>em</strong>a <strong>de</strong>ve processaresta entrada e exibir o resultado do reconhecimento. Ele é composto das seguintes etapas:formulação da consulta (<strong>de</strong>senho do esboço), processamento da consulta (tentativa<strong>de</strong> reconhecimento) e resposta ao usuário. A Figura 5.6 ilustra essas etapas.Figura 5.6: Etapas do Sist<strong>em</strong>a5.4.1 Formulação da consultaDurante a formulação da consulta, é exibida ao usuário uma tela on<strong>de</strong> o mesmopo<strong>de</strong> <strong>de</strong>senhar, livr<strong>em</strong>ente, uma forma que representa um el<strong>em</strong>ento do fluxograma. O<strong>de</strong>senho feito pelo usuário <strong>de</strong>ve conter apenas o contorno dos objetos que ele estáprocurando. A informação visual contida no esboço é extraída e passada ao módulo <strong>de</strong>processamento da consulta.5.4.2 Processamento da consultaO esboço feito pelo usuário é processado e o vetor <strong>de</strong> característica extraído. Suascaracterísticas são comparadas às características das várias formas geométricas tratadaspelo sist<strong>em</strong>a.
5.5 O Mo<strong>de</strong>lo do Sist<strong>em</strong>a 545.4.3 Resposta ao usuárioComo resposta ao usuário, o sist<strong>em</strong>a exibe o resultado do reconhecimento. Nestetrabalho, apenas uma mensag<strong>em</strong> <strong>de</strong> texto é exibida informando a forma reconhecida.Após o reconhecimento, várias ações po<strong>de</strong>riam ser tomadas: beautification (<strong>de</strong>senharuma versão “melhorada” da forma reconhecida), gerar código automático, executar algumaplicativo, entre outras.5.5 O Mo<strong>de</strong>lo do Sist<strong>em</strong>aNa Seção 2.6, foi apresentado um mo<strong>de</strong>lo genérico para Sist<strong>em</strong>as <strong>de</strong> Processamento<strong>de</strong> Imagens Digitais. Depen<strong>de</strong>ndo da aplicação, algumas etapas po<strong>de</strong>m ser adicionadasou r<strong>em</strong>ovidas. Neste sentido, a figura 5.7 ilustra as etapas presentes no sist<strong>em</strong>a aquiproposto:Figura 5.7: Processos <strong>em</strong> cada uma das etapas5.6 O Sist<strong>em</strong>a DesenvolvidoPara testar o método proposto neste trabalho, um sist<strong>em</strong>a computacional foiimpl<strong>em</strong>entado. Ele apresenta uma interface <strong>de</strong> entrada on<strong>de</strong> o usuário po<strong>de</strong> <strong>de</strong>senhar umaforma para ser analisada ou especificar um repositório local (diretório) contendo formaspara ser<strong>em</strong> analisadas. A Figura 5.8 exibe a interface do sist<strong>em</strong>a:
5.6 O Sist<strong>em</strong>a Desenvolvido 55Figura 5.8: Interface do Sist<strong>em</strong>aA Figura 5.9 exibe as duas formas <strong>de</strong> interação com o sist<strong>em</strong>a. Na primeira, ousuário esboça o <strong>de</strong>senho <strong>de</strong> uma forma e o sist<strong>em</strong>a retorna o resultado do reconhecimento.Na segunda, o usuário indica um dirétorio contendo as formas que gostaria <strong>de</strong>reconhecer e o sist<strong>em</strong>a retorna a lista <strong>de</strong> imagens e o reconhecimento para cada uma dasformas.Figura 5.9: Ex<strong>em</strong>plos da utilização do sist<strong>em</strong>a
5.7 O Método <strong>de</strong> Extração <strong>de</strong> Características 56O sist<strong>em</strong>a foi impl<strong>em</strong>entado utilizando-se a arquitetura .NET 1 , com a linguag<strong>em</strong>CSharp [7] por possuir suporte nativo à utilização <strong>de</strong> tinta digital 2 . Já as imagens foramarmazenadas <strong>em</strong> formato GIF 3 - Graphics Interchange Format (“.gif”) por ser umpadrão usado largamente na Internet e possui uma boa qualida<strong>de</strong> combinado com umtamanho relativamente baixo <strong>de</strong> armazenamento. Outros formatos, como JPEG 4 (JointPhotographic Experts Group) ou PNG 5 (Portable Network Graphics), também po<strong>de</strong>mser utilizados.O formato GIF é um tipo <strong>de</strong> arquivo para imagens que trabalha com umapaleta <strong>de</strong> 256 cores e foi criado pela <strong>em</strong>presa CompuServe, <strong>em</strong> 1987. Devido a essacaracterística, o uso do formato GIF é voltado para ícones ou imagens que não precisam <strong>de</strong>muitas cores. Ele utiliza um formato <strong>de</strong> compressão que não altera a qualida<strong>de</strong> da imag<strong>em</strong>a cada salvamento, como ocorre com o JPEG. Consi<strong>de</strong>rando esta forma <strong>de</strong> compressãojuntamente com a capacida<strong>de</strong> <strong>de</strong> trabalhar apenas com 256 cores, o GIF consegue criarimagens com tamanho bastante reduzido.5.7 O Método <strong>de</strong> Extração <strong>de</strong> CaracterísticasConstruir um sist<strong>em</strong>a para o reconhecimento <strong>de</strong> sketchs não é uma tarefa simples.De acordo com [34], algumas questões po<strong>de</strong>m ser utilizadas como guia nesta tarefa:• Quais as formas existentes neste domínio?• Como cada forma é reconhecida?• O que <strong>de</strong>ve acontecer quando a forma é reconhecida?• Como a forma po<strong>de</strong> ser editada?Muitos eventos específicos ao domínio po<strong>de</strong>m ocorrer após o reconhecimento daforma, sendo que o mais comum <strong>de</strong>les é a alteração visual da forma, pois transmite aousuário uma confirmação <strong>de</strong> que seu esboço foi reconhecido corretamente.De uma maneira geral, o sist<strong>em</strong>a para o reconhecimento <strong>de</strong> formas geométricaspresentes <strong>em</strong> fluxogramas, através <strong>de</strong> esboços feitos pelo usuário, é composto dosseguintes el<strong>em</strong>entos:• interface <strong>de</strong> entrada que possibilite ao usuário <strong>de</strong>senhar o seu esboço, ou indicar um“repositório” contendo as imagens que gostaria <strong>de</strong> avaliar,1 http://www.microsoft.com/net/2 http://msdn.microsoft.com/pt-br/library/ms749012.aspx3 Mais informações <strong>em</strong>: http://www.w3.org/Graphics/GIF/spec-gif89a.txt4 Mais informações <strong>em</strong>: http://www.w3.org/Graphics/JPEG/5 Mais informações <strong>em</strong>: http://www.w3.org/Graphics/PNG/
5.7 O Método <strong>de</strong> Extração <strong>de</strong> Características 57• módulo <strong>de</strong> extração das características,• módulo <strong>de</strong> reconhecimento,• interface <strong>de</strong> saída que possibilite a exibição dos resultados do reconhecimento.O método utilizado para extrair as informações a partir do esboço <strong>de</strong>senhadopelo usuário é dividido <strong>em</strong> quatro passos: Pré-processamento da imag<strong>em</strong> (extração,i<strong>de</strong>ntificação e marcação dos pixels), Análise da imag<strong>em</strong> (registro do caminho seguidopelo contorno do objeto), Aprimoramento da Ca<strong>de</strong>ia <strong>de</strong> Contorno e a Extração dasCaracterísticas.Consi<strong>de</strong>re a Figura 5.10 como ex<strong>em</strong>plo <strong>de</strong>ste processo:Figura 5.10: Sketch <strong>de</strong>senhado pelo usuário5.7.1 Pré-processamento da Imag<strong>em</strong>Nesta etapa o esboço <strong>de</strong>senhado pelo usuário passa por uma série <strong>de</strong> transformaçõespara facilitar a extração das suas características e facilitar o seu processamento.Inicialmente o esboço é convertido para uma imag<strong>em</strong> binária distinguindo-seentre os pixels que compõ<strong>em</strong> a imag<strong>em</strong> e os pixels <strong>de</strong> fundo: os pixels <strong>de</strong>senhados pelousuário são da cor preta e os <strong>de</strong>mais são brancos. Esta imag<strong>em</strong> binária é sobreposta poruma gra<strong>de</strong> com células <strong>de</strong> tamanho fixo (um pixels <strong>de</strong> largura por um pixels <strong>de</strong> altura),como na Figura 5.11.
5.7 O Método <strong>de</strong> Extração <strong>de</strong> Características 58Figura 5.11: Esboço binarizadoEssa gra<strong>de</strong> então é convertida <strong>em</strong> uma matriz <strong>de</strong> pixels da seguinte forma: cadacélula da gra<strong>de</strong> correspon<strong>de</strong> a uma posição da matriz, cada célula na cor preta é marcadana matriz com o caractere ’x’, as <strong>de</strong>mais posições são marcadas como vazias e preenchidascom o caractere ’-’. A Figura 5.12 ilustra este processo:
5.7 O Método <strong>de</strong> Extração <strong>de</strong> Características 59Figura 5.12: Gra<strong>de</strong> - Matriz <strong>de</strong> pixelsDentro <strong>de</strong>ssa matriz i<strong>de</strong>ntificam-se os pixels que compõ<strong>em</strong> o contorno do objeto<strong>de</strong>senhado. Eles são i<strong>de</strong>ntificados e são marcados como o caractere ’o’. Em seguidaaplica-se o processo conhecido como Projeção <strong>de</strong> Contorno (”Contour Projection”) [70]para preencher a forma do objeto. Este processo é utilizado para preencher a forma doesboço e minimizar algumas lacunas entre os strokes <strong>de</strong>senhados pelo usuário. Destamaneira, t<strong>em</strong>os: pixels <strong>de</strong> borda representados pelo caractere ’o’, pixels do interior daimag<strong>em</strong> representados pelo caractere ’x’ e os pixels que não faz<strong>em</strong> parte da imag<strong>em</strong>representados pelo caractere ’-’, como visto na Figura 5.13.
5.7 O Método <strong>de</strong> Extração <strong>de</strong> Características 60Figura 5.13: I<strong>de</strong>ntificação dos pixels <strong>de</strong> bordaO resultado final <strong>de</strong>sta etapa é uma matriz contendo uma representação fiel doobjeto esboçado pelo usuário. Fiel, pois o que o usuário <strong>de</strong>senhou está representado <strong>de</strong>ntro<strong>de</strong>sta matriz. A imag<strong>em</strong> "bruta"contém todas as imperfeições provenientes do <strong>de</strong>senhofeito, b<strong>em</strong> como aquelas originadas durante o processo <strong>de</strong> binarização.5.7.2 Análise da Imag<strong>em</strong>Nesta etapa a matriz <strong>de</strong> pixels, contento o objeto completo, é inicialmente percorridapara i<strong>de</strong>ntificar os pixels <strong>de</strong> borda, ou seja, os pixels que ficam nas extr<strong>em</strong>ida<strong>de</strong>s doobjeto. Essa i<strong>de</strong>ntificação dos pixels <strong>de</strong> borda é feita porque a forma do objeto é extraídaa partir do seu contorno.O primeiro passo é a i<strong>de</strong>ntificação do traçado da borda. Este é um processoessencial para a i<strong>de</strong>ntificação e reconhecimento da forma do objeto [20]. O métodoutilizado consiste <strong>em</strong> visitar o contorno externo do objeto (borda) no sentido horário ei<strong>de</strong>ntificar cada uma das transições feitas. Todos os pixels <strong>de</strong> borda serão visitados ei<strong>de</strong>ntificados uma única vez. Uma janela 3x3 é utilizada para acompanhar a forma <strong>de</strong>cada objeto, verificando a cada passo a direção do contorno.
5.7 O Método <strong>de</strong> Extração <strong>de</strong> Características 61A partir da matriz da forma é aplicado o seguinte algoritmo:1. Percorra a matriz até encontrar o primeiro pixel (o pixel mais à esquerda e naposição mais alta da matriz) e <strong>de</strong>finir este pixel como sendo a posição inicial daca<strong>de</strong>ia <strong>de</strong> contorno,2. A partir <strong>de</strong>ste pixel visite cada um dos seus vizinhos no sentido horário e armazeneo código da direção ( ver Figura 5.14),3. repita o passo 2 até que o pixel atual seja igual ao primeiro pixel.Durante este processo percorre-se todo o contorno da imag<strong>em</strong> armazenando otrajeto percorrido. Ou seja, percorr<strong>em</strong>-se os pixels que compõ<strong>em</strong> a borda do esboçoregistrando todas as transições <strong>de</strong>ste trajeto. Esta sequência <strong>de</strong> passos forma uma ca<strong>de</strong>ia<strong>de</strong> caracteres conhecida como Chain Co<strong>de</strong> (ver Seção 4.1.2). A forma é percorrida nosentido horário, inciando-se do pixel mais à esquerda e mais alto da matriz. A cadatransição i<strong>de</strong>ntifica-se o caminho a partir da posição anterior. A Figura 5.14 ex<strong>em</strong>plificaesse processo: na parte (A) t<strong>em</strong>os as i<strong>de</strong>ntificações para cada direção, na parte (B) t<strong>em</strong>osum ex<strong>em</strong>plo que como é aplicada o método e código gerado a partir <strong>de</strong>ste contorno.Figura 5.14: Ex<strong>em</strong>plo da utilização do Chain Co<strong>de</strong>O resultado final <strong>de</strong>sta etapa é uma sequência <strong>de</strong> caracteres, também chamado<strong>de</strong> código do contorno (ou chain co<strong>de</strong>), que i<strong>de</strong>ntifica o caminho percorrido através docontorno do objeto. A partir <strong>de</strong>sta sequência <strong>de</strong> caracteres/transições é que será feito oreconhecimento do objeto <strong>de</strong>senhado pelo usuário.5.7.3 Aprimoramento da Ca<strong>de</strong>ia <strong>de</strong> ContornoAntes <strong>de</strong> iniciar o reconhecimento da forma <strong>de</strong>senhada, algumas simplificaçõespo<strong>de</strong>m ser feitas sobre o código do contorno extraído. Essas simplificações t<strong>em</strong> como
5.7 O Método <strong>de</strong> Extração <strong>de</strong> Características 62objetivo reduzir a quantida<strong>de</strong> <strong>de</strong> informações a ser processada, reduzir ruídos presentesno esboço, eliminar transições com baixo ou nenhum valor s<strong>em</strong>ântico e agilizar o processo<strong>de</strong> comparação e i<strong>de</strong>ntificação.A primeira etapa <strong>de</strong>ste processo é o agrupamento <strong>de</strong> transições iguais. Cadasequência <strong>de</strong> dois ou mais caracteres idênticos é agrupada <strong>em</strong> uma única sequência. AFigura 5.15 exibe alguns ex<strong>em</strong>plos:Figura 5.15: Agrupamento <strong>de</strong> transiçõesNa segunda etapa r<strong>em</strong>ov<strong>em</strong>-se transições isoladas entre ca<strong>de</strong>ias <strong>de</strong> transições domesmo tipo. A Figura 5.16 exibe alguns ex<strong>em</strong>plos:Figura 5.16: R<strong>em</strong>oção <strong>de</strong> transições isoladas - 1Na terceira etapa r<strong>em</strong>ov<strong>em</strong>-se transições isoladas entre uma ca<strong>de</strong>ia e uma transiçãodo mesmo tipo da ca<strong>de</strong>ia. A Figura 5.17 ex<strong>em</strong>plifica este processo:Figura 5.17: R<strong>em</strong>oção <strong>de</strong> transições isoladas - 2Na quarta etapa r<strong>em</strong>ov<strong>em</strong>-se transições isoladas entre ca<strong>de</strong>ias <strong>de</strong> transiçõesdistintas. A Figura 5.18 exibe alguns ex<strong>em</strong>plos <strong>de</strong>ste processo:
5.7 O Método <strong>de</strong> Extração <strong>de</strong> Características 63Figura 5.18: R<strong>em</strong>oção <strong>de</strong> transições isoladas - 3No final <strong>de</strong> cada uma <strong>de</strong>ssas estapas realiza-se um novo agrupamento <strong>de</strong> transições.Transições singulares, ou ca<strong>de</strong>ias <strong>de</strong> transições, que são vizinhas a ca<strong>de</strong>ias <strong>de</strong>transições <strong>de</strong> mesmo tipo <strong>de</strong>v<strong>em</strong> ser agupadas. A Figura 5.19 apresenta alguns ex<strong>em</strong>plos:Figura 5.19: Re-agrupamentoNa quinta etapa realizam-se simplificações entre transições. Algumas combinações<strong>de</strong> transições po<strong>de</strong>m ser simplificadas para reduzir as imprecisões nos esboços feitospelo usuário oriundas <strong>de</strong> erros <strong>de</strong> <strong>de</strong>senho ou erros introduzidos durante a binarização daimag<strong>em</strong>. A Figura 5.20 ex<strong>em</strong>plifica todas as simplificações diretas feitas entre ca<strong>de</strong>ias <strong>de</strong>tamanho 2 (dois), ou seja, que envolv<strong>em</strong> apenas duas transições.
5.7 O Método <strong>de</strong> Extração <strong>de</strong> Características 64Figura 5.20: Simplificações para ca<strong>de</strong>ias <strong>de</strong> tamanho 2Este processo é repetido enquanto houver transições a ser<strong>em</strong> agrupadas, simplificadasou r<strong>em</strong>ovidas da ca<strong>de</strong>ia.5.7.4 Extração <strong>de</strong> CaracterísticasCom a ca<strong>de</strong>ia simplificada e reduzida, o passo seguinte é a extração das característicaspresentes no contorno do sketch que permitam reconhecer a forma <strong>de</strong>senhadapelo usuário. As características utilizadas são:• a altura do objeto,• a largura do objeto,• o número <strong>de</strong> “retas” (transições) que compõe o contorno do objeto, e• os ângulos internos entre cada uma das transições.As variáveis, altura e largura, fornec<strong>em</strong> uma relação importante para análise daimag<strong>em</strong>. Vamos chamar <strong>de</strong> resultado (R) a relação entre a altura e a largura do objeto<strong>de</strong>senhado, ou seja:
5.7 O Método <strong>de</strong> Extração <strong>de</strong> Características 65Se altura for menor que a largura:R = alturalargura(5-1)E se altura for maior que a largura:R = larguraaltura(5-2)A partir <strong>de</strong>sta relação entre altura e largura do objeto, po<strong>de</strong>-se dividir as imagens<strong>em</strong> três grupos, baseados na forma <strong>de</strong> sua estrutura:• forma <strong>de</strong> linha• forma quadrada• forma retangularCada um <strong>de</strong>sses grupos é limitado pelo valor R. Desta maneira po<strong>de</strong>-se iniciara distinção entre os objetos subdividindo-os <strong>em</strong> cada um <strong>de</strong>stes três grupos utilizando aseguinte relação entre as formas:• Se R ten<strong>de</strong> a 0, então a forma é <strong>de</strong> linha• Se R ten<strong>de</strong> a 1, então a forma é quadrada• Se R esta entre 0 e 1, então a forma é retangularUm esboço, feito manualmente pelo usuário, não possui dimensões perfeitas en<strong>em</strong> proporções i<strong>de</strong>ais. Um usuário interessado <strong>em</strong> <strong>de</strong>senhar um quadrado não precisa<strong>de</strong>senhá-lo com a altura e a largura exatamente iguais. Por isso, <strong>de</strong>ve haver uma certatolerância, ou um certo “limite” <strong>de</strong> imprecisão para seu <strong>de</strong>senho. Pensando nisso, umvalor para este Limite (L) <strong>de</strong>ve ser consi<strong>de</strong>rado durante a divisão dos objetos entre essestrês grupos. Sendo assim, os valores que <strong>de</strong>fin<strong>em</strong> cada um dos três grupos são calculados<strong>de</strong> acordo com a seguinte equação:LINHA ≤ L 2< RETANGULO ≤ (1 − L) < QUADRADO ≤ 1 (5-3)O valor <strong>de</strong> L é a marg<strong>em</strong> <strong>de</strong> tolerância para a imprecisão do <strong>de</strong>senho feito pelousuário e seu valor <strong>de</strong>ve estar entre 0 (zero) e 1 (um). Por ex<strong>em</strong>plo, se a tolerância for<strong>de</strong> 30% o limite será igual a 0,3. Para ex<strong>em</strong>plificar este processo consi<strong>de</strong>re a Figura 5.21.Nesta figura t<strong>em</strong>-se quatro formas distintas (A, B, C e D) e suas proprieda<strong>de</strong>s (dimensõese os respectivos valores <strong>de</strong> R).
5.7 O Método <strong>de</strong> Extração <strong>de</strong> Características 66Figura 5.21: Ex<strong>em</strong>plos <strong>de</strong> formasNa Figura 5.22, classificam-se essas formas <strong>de</strong> acordo com a equação 5-3. Trêsvalores distintos <strong>de</strong> L são adotados para ilustrar os possíveis resultados <strong>de</strong>sta classificação.Figura 5.22: Ex<strong>em</strong>plos <strong>de</strong> aplicação da equação 5-35.23:Os ângulos entre cada uma das transições são dados <strong>de</strong> acordo com a FiguraFigura 5.23: Ângulos entre cada uma das transições
5.7 O Método <strong>de</strong> Extração <strong>de</strong> Características 67A última característica necessária para o reconhecimento das formas é o número<strong>de</strong> transições, ou seja, o número <strong>de</strong> “segmentos <strong>de</strong> retas” que compõe o objeto. Nesteponto algumas questões <strong>de</strong>v<strong>em</strong> ser respondidas:• Mas o que v<strong>em</strong> a ser uma reta?• Qual o número i<strong>de</strong>al <strong>de</strong> transições para formar uma reta?A resposta da primeira pergunta é simples, um segmento <strong>de</strong> reta é uma sequência<strong>de</strong> transições iguais, <strong>de</strong> tamanho variável. Já a segunda pergunta exige um pouco mais <strong>de</strong>atenção. Este número <strong>de</strong>ve ser gran<strong>de</strong> o suficiente para eliminar segmentos irrelevantes,como pequenas imprecisões no <strong>de</strong>senho, e pequeno o suficiente para não per<strong>de</strong>r segmentosrelevantes à interpretação da forma. Após alguns testes iniciais, foi adotado o valortrês (3), ou seja, apenas segmentos com 3 ou mais transições iguais seriam consi<strong>de</strong>radoscomo uma “reta”.Após os cáculos <strong>de</strong>ste conjunto <strong>de</strong> características, o sist<strong>em</strong>a <strong>de</strong>ve ser capaz <strong>de</strong>i<strong>de</strong>ntificar e reconhecer o esboço do usuário. Este reconhecimento é possível pois cadaforma existente possui uma combinação única <strong>de</strong>ste conjunto <strong>de</strong> características. A Figura5.24 apresenta as formas encontradas <strong>em</strong> fluxogramas e as características que <strong>de</strong>fin<strong>em</strong>cada uma <strong>de</strong>stas formas unicamente.
5.7 O Método <strong>de</strong> Extração <strong>de</strong> Características 68Figura 5.24: <strong>Formas</strong> e suas proprieda<strong>de</strong>s
5.8 Conclusão 69Algumas consi<strong>de</strong>rações importantes <strong>de</strong>v<strong>em</strong> ser ressaltadas:• losangos e trapézios têm, praticamente, as mesmas características e difer<strong>em</strong> entresi pela sequência <strong>de</strong> seus ângulos. Ambos t<strong>em</strong> dois ângulos <strong>de</strong> 45 ◦ e dois ângulos<strong>de</strong> 135 o . A diferença é que nos losangos os ângulos são intercalados, ou seja, umângulo 45 ◦ é vizinho dos ângulos <strong>de</strong> 135 ◦ . Já no trapézio os ângulos iguais sãovizinhos.• circulos e elipses são aproximados para heptágonos (7 retas) ou octógonos (8 retas),pois o método <strong>de</strong> aprimoramento da ca<strong>de</strong>ia <strong>de</strong> contorno (Seção - 5.7.3) transformasegmentos curvelíneos <strong>em</strong> segmentos retos (ver Figura 5.25).• o intervalo entre os ângulos é múltiplo <strong>de</strong> 45 ◦ pois o Método Chain Co<strong>de</strong> divi<strong>de</strong> umintervalo <strong>de</strong> 360 ◦ <strong>em</strong> oito intervalos <strong>de</strong> igual valor.Figura 5.25: Aproximações para círculos e elipses5.8 ConclusãoNeste capítulo foi introduzido um método <strong>de</strong> representação e reconhecimento<strong>de</strong> formas geométricas, que é baseado na Representação do tipo Chain Co<strong>de</strong>. Ele utilizacomo características: o número <strong>de</strong> retas, os ângulos entre cada uma das retas e a relaçãoentre as dimensões do esboço. O método é invariante a transformações <strong>de</strong> escala, rotação,espelhamento e translação, assim como é in<strong>de</strong>pen<strong>de</strong>nte do ponto inicial.Uma questão que merece <strong>de</strong>staque é a possibilida<strong>de</strong> do sist<strong>em</strong>a admitir novasformas. Se uma dada forma pu<strong>de</strong>r ser <strong>de</strong>finida, unicamente, com o conjunto <strong>de</strong> caracteríticasapresentadas na seção 5.7.4, então ela po<strong>de</strong> ser adicionada à base <strong>de</strong> formas dosist<strong>em</strong>a. Aumentando, assim, o número <strong>de</strong> formas reconhecíveis.
AvaliaçãoCAPÍTULO 6A área <strong>de</strong> reconhecimentos <strong>de</strong> sketchs carece <strong>de</strong> um conjunto único <strong>de</strong> dadosque possa ser utilizado para comparar os algoritmos existentes com os novos algoritmos[43]. Desta forma, s<strong>em</strong> esse conjunto único <strong>de</strong> dados, os resultados exibidos por cadaalgoritmo não po<strong>de</strong>m ser comparados <strong>de</strong> maneira a avaliar se um novo algoritmo é melhorque os anteriores, ou até mesmo qual o melhor algoritmo para este fim. Métodos parateste e avaliação <strong>de</strong> Sist<strong>em</strong>as <strong>de</strong> Recuperação <strong>de</strong> Imagens ainda são muito difíceis <strong>de</strong>ser<strong>em</strong> aplicados. Sendo assim, para avaliar o método proposto neste trabalho, uma base<strong>de</strong> esboços foi criada.A utilização do gráfico <strong>de</strong> Recall x Precision constitui uma abordag<strong>em</strong> simplese b<strong>em</strong> conhecida para avaliação <strong>de</strong> sist<strong>em</strong>as computacionais. A precisão (precision) representaa porção <strong>de</strong> imagens recuperadas que são relevantes à consulta. Já a revocação(recall) correspon<strong>de</strong> à porção <strong>de</strong> imagens relevantes que foram recuperadas [8]. Infelizmente,<strong>de</strong> acordo com [84], essa abordag<strong>em</strong> não é suficiente para sist<strong>em</strong>as <strong>de</strong> recuperação<strong>de</strong> imagens pois selecionar as imagens que são relevantes não é tão simples <strong>de</strong>vido às dificulda<strong>de</strong>s<strong>de</strong> se <strong>de</strong>finir, precisamente, o conteúdo <strong>de</strong> uma imag<strong>em</strong>.Devido a essa ausência <strong>de</strong> métodos próprios para avaliação <strong>de</strong> sist<strong>em</strong>as CBIR,adotou-se como medida o Nível <strong>de</strong> <strong>Reconhecimento</strong>: dado um conjunto <strong>de</strong> formas <strong>de</strong>senhadaspelo usuário, <strong>de</strong>ntro <strong>de</strong>ste conjunto calcula-se a porcentag<strong>em</strong> <strong>de</strong> reconhecimentosfeitos <strong>de</strong> maneira correta. Por ex<strong>em</strong>plo, se t<strong>em</strong>os 200 quadrados <strong>de</strong>senhados pelos usuáriose, durante o reconhecimento, o sist<strong>em</strong>a foi capaz <strong>de</strong> reconhecer corretamente 180 dos200 quadrados, então o Nível <strong>de</strong> <strong>Reconhecimento</strong> (% <strong>de</strong> <strong>Reconhecimento</strong>) foi <strong>de</strong> 90%.6.1 O <strong>Reconhecimento</strong>Dados dois objetos, a similarida<strong>de</strong> é uma medida <strong>de</strong> quão parecidos esses doisobjetos são. No caso <strong>de</strong> imagens, a similarida<strong>de</strong> po<strong>de</strong> ser medida <strong>de</strong> várias formas: na cor,forma, no tamanho, entre outros. Após a extração dos <strong>de</strong>scritores <strong>de</strong> conteúdo da imag<strong>em</strong>,po<strong>de</strong>-se compará-los aos <strong>de</strong>scritores extraídos <strong>de</strong> outras imagens [30]. Inicialmente
6.2 Base <strong>de</strong> dados para o teste 71as imagens são submetidas a um processo <strong>de</strong> extração <strong>de</strong> características. Essas características,por sua vez, são utilizadas para i<strong>de</strong>ntificação da forma <strong>de</strong>senhada.Como o usuário po<strong>de</strong> <strong>de</strong>senhar livr<strong>em</strong>ente, torna-se necessário a utilização <strong>de</strong>técnicas capazes <strong>de</strong> recuperar imagens similares [26]. A similarida<strong>de</strong> buscada neste tipo<strong>de</strong> sist<strong>em</strong>a é a similarida<strong>de</strong> humana. Infelizmente, ainda não se encontrou um método<strong>de</strong> reconhecimento i<strong>de</strong>al, aplicável a vários domínios diferentes. Para domínios restritos,diversas simplificações e restrições po<strong>de</strong>m ser aplicadas com o objetivo <strong>de</strong> minimizar avariabilida<strong>de</strong> das características a ser<strong>em</strong> analisadas diminuindo, assim, a complexida<strong>de</strong>durante o processo <strong>de</strong> reconhecimento. Se dois objetos são equivalentes <strong>em</strong> algumacaracterística sobre um grupo <strong>de</strong> transformações, então o reconhecimento po<strong>de</strong> ser feito.Neste trabalho, após a extração das características do esboço <strong>de</strong>senhado pelousuário (ver Seção 5.7.4), as mesmas são comparadas com as características pré-<strong>de</strong>finidaspara as formas reconhecidas pelo sist<strong>em</strong>a (ver Figura 5.24) nas sua base <strong>de</strong> imagens.Isto nada mais é do que um probl<strong>em</strong>a <strong>de</strong> <strong>de</strong>cisão, ou seja, o esboço do usuário t<strong>em</strong>características iguais às caracteristicas das formas reconhecidas pelo sist<strong>em</strong>a? Se sim, aforma é reconhecida e a ação correta po<strong>de</strong> ser tomada; se não, a forma não é reconhecidapelo sist<strong>em</strong>a e o usuário <strong>de</strong>ve ser informado.6.2 Base <strong>de</strong> dados para o testePara testar o método proposto neste trabalho, uma massa <strong>de</strong> dados precisou sergerada contendo vários ex<strong>em</strong>plos <strong>de</strong> cada uma das formas geométricas. Desta maneira,foi solicitado a <strong>de</strong>z (10) pessoas que criass<strong>em</strong> manualmente alguns esboços para cadagrupo <strong>de</strong> formas. A cada um dos participantes foi entregue uma lista contendo as mesmasformas presentes na Figura 5.24 e um tablet PC contendo o sist<strong>em</strong>a referido na seção 5.6.Os esboços foram feitos com a utilização <strong>de</strong> uma caneta, mas também po<strong>de</strong>riam ter sidofeitos com a utilização <strong>de</strong> um mouse. Cada usuário realizou este processo individualmentee após a conclusão dos <strong>de</strong>senhos, as imagens foram organizadas <strong>de</strong> acordo com seu tipo.Antes <strong>de</strong> iniciar<strong>em</strong> os <strong>de</strong>senhos, algumas exigências foram feitas aos usuários:1. <strong>de</strong>senhe o mais preciso possível2. as formas <strong>de</strong>senhadas, com exceção do Grupo das Linhas, <strong>de</strong>v<strong>em</strong> ser formasfechadas3. <strong>de</strong>senhar as formas no mesmo sentido e na mesma orientação presentes na lista <strong>de</strong>formasForam <strong>de</strong>senhados um total <strong>de</strong> 845 (oitocentas e quarenta e cinco) imagens. Apósa geração <strong>de</strong>ste conjunto incial <strong>de</strong> formas, elas foram testadas no sist<strong>em</strong>a para verificar oseu funcionamento. Os resultados obtidos estão expressos na Tabela 6.1. Em um segundo
6.3 Resultados 72momento, esses esboços <strong>de</strong>senhados pelos usuários também sofreram transformações <strong>de</strong>rotação e espelhamento para se verificar a invariância do método quanto a transformação<strong>de</strong> rotação.É importante ressaltar que o sist<strong>em</strong>a impl<strong>em</strong>entado, para avaliar o métodoproposto, possui uma área para o <strong>de</strong>senho <strong>de</strong> esboços com uma dimensão <strong>de</strong> 256x256pixels. Este tamanho permite que o usuário crie formas com até 65.536 pixels. Durantea fase <strong>de</strong> Pré-processamento (ver seção 5.7.1), o método converte este esboço <strong>em</strong> umamatriz <strong>de</strong> pixels que é diretamente proporcional ao tamanho do <strong>de</strong>senho. Logo quantomaior o <strong>de</strong>senho, maior é a matriz gerada. Quanto maior for a matriz, mais dados o sist<strong>em</strong>a<strong>de</strong>verá processar.Caso seja necessário trabalhar com <strong>de</strong>senhos maiores, por questões <strong>de</strong> performace,po<strong>de</strong>-se utilizar a normalização do tamanho do esboço antes <strong>de</strong> gerar a matriz.Isto é, in<strong>de</strong>pen<strong>de</strong>nte do tabamnho do <strong>de</strong>senho feito, o mesmo seria redimensionado paraum tamanho previamente <strong>de</strong>finido e, só então, a matriz <strong>de</strong> pixels seria gerada. Com isso,evita-se que matrizes muito gran<strong>de</strong>s sejam geradas, o que prejudicaria o <strong>de</strong>s<strong>em</strong>penho dométodo.Desenhos muito pequenos também po<strong>de</strong>m afetar o método. Como o sist<strong>em</strong>atrabalha com agrupamentos <strong>de</strong> transições iguais (ver seção 5.7.4), se as sequências <strong>de</strong>transições forém pequenas o método não conseguirá formar segmentos <strong>de</strong> reta válidos.Neste caso exist<strong>em</strong> duas soluções: utilizar a normalização do <strong>de</strong>senho, ou po<strong>de</strong>-se ajustaro método para que sequências menores sejam consi<strong>de</strong>radas para a formação <strong>de</strong> segmentosválidos.Atualmente, o sist<strong>em</strong>a não impl<strong>em</strong>enta o redimensionamento (normalização)pois não se fez necessário para avaliação do método proposto. Durante a fase <strong>de</strong> testes,foram utilizados diferentes tamanhos <strong>de</strong> segmento para avaliar a sensibilida<strong>de</strong> do método<strong>em</strong> um conjunto <strong>de</strong> amostras. Os resulstados <strong>de</strong>sta avaliação estão <strong>de</strong>scritos na seçãoseguinte.6.3 ResultadosA Tabela 6.1 exibe os resultados por cada tipo <strong>de</strong> forma obtidos durante oprimeiro teste do método sobre as formas criadas pelos usuários.
6.3 Resultados 73Tabela 6.1: Teste 1 - Resultados<strong>Formas</strong> Quantida<strong>de</strong> Acertos Erros % <strong>de</strong> <strong>Reconhecimento</strong>Círculo 96 84 12 87,50 %Elipse 92 70 22 76,08 %Hexágono 97 61 36 62,88 %Linha 66 59 07 89,39 %Losango 73 36 37 49,31 %Quadrado 115 89 26 77,39 %Retângulo 88 67 21 76,13 %Trapézio 74 62 12 83,78 %Triângulo 144 96 48 66,66 %Os resultados apresentados no primeiro teste não foram satisfatórios. Este conjunto<strong>de</strong> 845 imagens foi então analisado criticamente e revisado por um olhar humano.Após análise do resultados obtidos, foi constatado que uma parecela significativa dosreconhecimentos mal sucedidos ocorreu porque algumas das formas <strong>de</strong>senhadas não correspondiama formas válidas.Esta análise é necessária para avaliar se o reconhecimento foi feito <strong>de</strong> maneiracorreta e se o índice <strong>de</strong> reconhecimento po<strong>de</strong> ser melhorado. Após esta primeira revisão,alguns probl<strong>em</strong>as foram <strong>de</strong>tectados e, após uma análise <strong>de</strong>talhada das suas causas, foiverificado que parte dos erros <strong>de</strong> reconhecimento não foram ocasionados por falha dométodo. A lista abaixo exibe alguns dos erros mais comuns <strong>de</strong>tectados:• <strong>de</strong>senhar retângulos ao invés <strong>de</strong> quadrados e vice-versa,• <strong>de</strong>senhar círculos no lugar <strong>de</strong> elipses e vice-versa,• <strong>de</strong>senhar quadrados ou retângulos aos invés <strong>de</strong> losângos,• não aten<strong>de</strong>r as regras apresentadas na Seção 6.2,• <strong>de</strong>senhar formas irreconhecíveis até por um humano.As formas irreconhecíveis são esboços <strong>de</strong>senhados pelos usuários que não pu<strong>de</strong>ramser i<strong>de</strong>ntificados n<strong>em</strong> por um olhar humano. O conjunto <strong>de</strong> formas que não foireconhecido pelo sist<strong>em</strong>a foi então analisado por uma pessoa. As formas que n<strong>em</strong> o indivíduoconseguiu i<strong>de</strong>ntificar foram r<strong>em</strong>ovidas da base <strong>de</strong> amostrag<strong>em</strong>. Isso foi feito poisse mesmo um humano conseguiu i<strong>de</strong>ntificar a forma <strong>de</strong>senhada, o sist<strong>em</strong>a também nãoteria esta capacida<strong>de</strong>.Esses erros prejudicaram a eficiência do método <strong>de</strong> reconhecimento e, após estaanálise crítica da formas <strong>de</strong>senhadas, algumas ações foram tomadas:• imagens irreconhecíveis foram r<strong>em</strong>ovidas do conjunto <strong>de</strong> amostras ,
6.3 Resultados 74• imagens que não atendiam à Regra 2 da Seção 6.2 foram r<strong>em</strong>ovidas (a Figura 6.1exibe alguns ex<strong>em</strong>plos),• algumas imagens foram movidas para grupos mais a<strong>de</strong>quados (a Figura 6.2 exibealguns ex<strong>em</strong>plos).Figura 6.1: Ex<strong>em</strong>plos <strong>de</strong> formas r<strong>em</strong>ovidas
6.3 Resultados 75Figura 6.2: Ex<strong>em</strong>plos <strong>de</strong> formas movidas para outros gruposEste “novo” conjunto <strong>de</strong> amostras, contendo 787 imagens, foi então testadonovamente no sist<strong>em</strong>a. Os resultados <strong>de</strong>ste novo teste são exibidos na Tabela 6.2.Tabela 6.2: Teste 2 - Resultados<strong>Formas</strong> Quantida<strong>de</strong> Acertos Erros % <strong>de</strong> <strong>Reconhecimento</strong>Círculo 92 84 08 91,30 %Elipse 83 70 13 84,33 %Hexágono 83 61 22 73,49 %Linha 61 59 02 96,72 %Losango 65 36 29 55,38 %Quadrado 108 97 11 89,81 %Retângulo 86 72 14 83,72 %Trapézio 72 62 10 86,11 %Triângulo 137 99 38 72,26 %Os resultados apresentados no segundo teste tiveram uma melhora consi<strong>de</strong>rável.Porém as formas com traçados diagonais (triângulo, losango e hexágono) ainda apresentaramum índice <strong>de</strong> reconhecimento inferior. Durante análise <strong>de</strong>stas formas, foi constatado
6.3 Resultados 76que o método não reconhecia segmentos diagonais <strong>de</strong> maneira apropriada. Então alteraçõesno método foram efetuadas para a execução <strong>de</strong> novos testes. A principal alteraçãofeita foi aumentar o número <strong>de</strong> transições iguais para formar um segmento <strong>de</strong> “reta” válido(ver Seção 5.7.4). Este valor foi alterado <strong>de</strong> 3 para 4 e 5 com o objetivo <strong>de</strong> r<strong>em</strong>overpequenas falhas <strong>de</strong> <strong>de</strong>senho e eliminar pequenos segmentos inexpressivos para a i<strong>de</strong>ntificaçãoda forma.Um novo teste foi executado para segmentos <strong>de</strong> tamanho 4 e para segmentos <strong>de</strong>tamanho 5, e os resultados são exibidos na Tabela 6.3 abaixo:Tabela 6.3: Teste 3 - Resultados para segmentos <strong>de</strong> tamanho 4 e 5<strong>Formas</strong> Quantida<strong>de</strong> % <strong>de</strong> <strong>Reconhecimento</strong>segmentos <strong>de</strong> tamanho 4% <strong>de</strong> <strong>Reconhecimento</strong>segmentos <strong>de</strong> tamanho 5Círculo 92 92,39 % 92,39 %Elipse 83 67,46 % 50,60 %Hexágono 83 87,95 % 83,13 %Linha 61 98,36 % 98,36 %Losango 65 67,69 % 66,15 %Quadrado 108 93,51 % 93,51 %Retângulo 86 86,04 % 86,04 %Trapézio 72 94,44 % 88,88 %Triângulo 137 85,40 % 88,32 %Os resultados obtidos no terceiro teste foram melhores para todas as formas,exceto para as elipses. De uma forma geral, todas as formas tiveram uma melhora noreconhecimento, principalmente as formas com traçados diagonais (triângulo, losango ehexágono).No caso das elipses, uma análise mais criteriosa foi feita. Alterando o tamanhodo segmento <strong>de</strong> 3 para 5 transições fez com que o índice <strong>de</strong> reconhecimento <strong>de</strong>sta formacaísse <strong>de</strong> 84,33% para 50,60%. Por quê? Se todas as formas tiveram uma melhora,por que o grupo das elipses teve esta queda tão acentuada? Este queda no índice <strong>de</strong>reconhecimento ocorreu porque ao aumentar o tamanho do segmento fez com queas elipses foss<strong>em</strong> “confundidas” com hexágonos e pentágonos. A consi<strong>de</strong>ração feitaanteriormente, <strong>de</strong> que as elipses eram reduzidas para octógonos e heptágonos (ver Figura5.25), não estava mais sendo verificada. Com segmentos maiores, algumas das elipses<strong>de</strong>senhadas estavam sendo transformadas <strong>em</strong> pentágonos e hexágonos. A Figura 6.3 exibeesta situação.
6.3 Resultados 77Figura 6.3: Simplificações para elipses com segmentos <strong>de</strong> 3 e 5transiçõesIsto ocorreu porque nos segmentos com curvatura mais acentuada (as laterais daelipse), houve uma dimunição no número <strong>de</strong> segmentos consi<strong>de</strong>rados válidos. Ou seja,para um mesmo intervalo, quando se aumenta o tamanho dos segmentos, naturalmenteo número <strong>de</strong> segmentos diminui. Por isso as elipses se transformaram <strong>em</strong> hexágonos epentágonos ao invés <strong>de</strong> octógonos e heptágonos, como previsto anteriormente.Para melhorar o índice <strong>de</strong> reconhecimento, os resultados obtidos para segmentos<strong>de</strong> tamanho 3, 4 e 5 foram avaliados. Po<strong>de</strong>-se verificar que, com exceção das elipses, todasas formas tiveram uma melhora, ou mantiveram, seus índices <strong>de</strong> reconhecimento a medidaque aumentamos o tamanho do segmento. Algumas formas (hexágono, losango e trapézio)tiveram resultados melhores com segmentos <strong>de</strong> tamanho 4, outras (triângulo) tiveramresultados melhores com segmentos <strong>de</strong> tamanho 5 e as <strong>de</strong>mais formas (círculo, linha,quadrado e retângulo) apresentaram os mesmos resultados para segmentos <strong>de</strong> tamanho 4ou 5. Então, qual seria o valor i<strong>de</strong>al para o tamanho do segmento?• Elipses t<strong>em</strong> índice <strong>de</strong> reconhecimento melhor com segmentos <strong>de</strong> tamanho 3,• Hexágonos, losangos e trapézio t<strong>em</strong> índices <strong>de</strong> reconhecimento melhor com segmentos<strong>de</strong> tamanho 4, e• Triângulos t<strong>em</strong> índice <strong>de</strong> reconhecimento menor com segmentos <strong>de</strong> tamanho 5.O método, outra vez, teve que ser revisado <strong>em</strong> busca <strong>de</strong> novas melhorias. I<strong>de</strong>almente,<strong>de</strong>ve-se adotar um tamanho <strong>de</strong> segmento que maximize o índice <strong>de</strong> reconhecimentopara todas as formas. Este valor <strong>de</strong>veria ser um valor entre 3 e 5. Como este valor<strong>de</strong>ve ser único para todas as formas, <strong>de</strong>cidiu-se adotar uma abordag<strong>em</strong> diferente: ao invés<strong>de</strong> ter um único valor para <strong>de</strong>finir o tamanho <strong>de</strong> um segmento válido, serão utilizadosdois valores. Para o primeiro agrupamento, foram adotados segmentos <strong>de</strong> tamanho maior
6.3 Resultados 78e para os agrupamentos subsequentes adotam-se segmentos com menor tamanho. A novaabordag<strong>em</strong> é explicada abaixo:• Durante o primeiro agrupamento, ou seja, feito diretamente no esboço do usuário,foi adotado um tamanho <strong>de</strong> segmento igual a 4,• Nos agrupamentos seguintes, feitos a partir da ca<strong>de</strong>ia <strong>de</strong> contorno já agupada esimplificada, foi adotado um tamanho <strong>de</strong> segmento igual a 3.Um novo teste foi executado e os resultados são exibidos na Tabela 6.4.Tabela 6.4: Teste 4 - Resultados - Segmentos <strong>de</strong> tamanho 4,3<strong>Formas</strong> Quantida<strong>de</strong> Acertos Erros % <strong>de</strong> <strong>Reconhecimento</strong>Círculo 92 84 08 91,30 %Elipse 83 69 13 72,28 %Hexágono 83 70 13 84,33 %Linha 61 60 01 98,36 %Losango 65 44 21 67,69 %Quadrado 108 98 10 90,74 %Retângulo 86 74 12 86,04 %Trapézio 72 67 05 93,05 %Triângulo 137 116 21 84,67 %O teste 4 obteve, na média, resultados melhores que os testes anteriores. Depen<strong>de</strong>ndoda aplicação e das formas adotadas, po<strong>de</strong>-se optar por valores diferenciados parao tamanho dos segmentos válidos. Po<strong>de</strong>-se utilizar um único valor, ou até mesmo criarnovas combinações <strong>de</strong> valores, como a combinação feita para o teste 4.Para finalizar a avaliação do método, <strong>de</strong>ve-se testar sua invariância quanto a rotaçãoe ao espelhamento da formas. Para isto, cada um dos sketchs foi, então, rotacionado3 vezes consecutivas com intervalos <strong>de</strong> 90 ◦ (90 ◦ , 180 ◦ e 270 ◦ respectivamente) e tambémrotacionados <strong>em</strong> torno dos eixos X e Y (espelhamento), totalizando 4.712 (quatromil setecentos e doze) imagens. Este processo <strong>de</strong> rotação e espelhamento dos esboços énecessário para testar a invariância do método quanto a rotação. Os resultados para esteteste final são exibidos na Tabela 6.5:
6.3 Resultados 79Tabela 6.5: Teste 5 - Avaliando a invariância<strong>Formas</strong> Quantida<strong>de</strong> Acertos Erros % <strong>de</strong> <strong>Reconhecimento</strong>Círculo 551 504 47 91,47 %Elipse 498 409 89 82,12 %Hexágono 498 418 80 83,93 %Linha 364 358 06 98,35 %Losango 390 261 129 66,92 %Quadrado 648 584 64 90,12 %Retângulo 514 448 66 87,15 %Trapézio 427 392 35 91,80 %Triângulo 822 696 126 84,67 %Como esperado, os índices <strong>de</strong> reconhecimento foram, praticamente, os mesmos.Isto prova que o método é invariante à transformação <strong>de</strong> rotação. Ele é invariante àtranslação porque sua posição <strong>de</strong>ntro da área <strong>de</strong> <strong>de</strong>senho não influência na formaçãoda ca<strong>de</strong>ia <strong>de</strong> contorno, que s<strong>em</strong>pre t<strong>em</strong> início no pixel mais a esquerda e na posiçãomais elevada (ver 5.7.2). E também é invariante às alterações <strong>de</strong> escala porque duranteo processo <strong>de</strong> aprimoramento da ca<strong>de</strong>ia <strong>de</strong> contorno, o tamanho da ca<strong>de</strong>ia é reduzido asegmentos el<strong>em</strong>entares. A Figura 6.4 exibe dois ex<strong>em</strong>plos <strong>de</strong> quadrados, e ambos gerama mesma ca<strong>de</strong>ia <strong>de</strong> contorno: 2 n 4 n 6 n 0 n , ou seja: uma sequência <strong>de</strong> transições tipo Dois,uma sequência <strong>de</strong> transições tipo Quatro, uma sequência <strong>de</strong> transições tipo Seis e umasequência <strong>de</strong> transições tipo Zero.Figura 6.4: <strong>Formas</strong> com escala diferente mas com mesma ca<strong>de</strong>ia<strong>de</strong> contornoUma consi<strong>de</strong>ração importante <strong>de</strong>ve ser feita quanto a forma dos losangos. Umlosango é um polígono formado por quatro lados (quadrilátero) <strong>de</strong> igual comprimentoe cuja soma dos ângulos internos é igual a 360 ◦ . Por <strong>de</strong>finição todo retângulo e todoquadrado são casos particulares <strong>de</strong> losangos: um quadrilátero com 4 ângulos <strong>de</strong> 90 ◦ .Logo, todo retângulo e todo quadrado também são losangos. Conforme mencionado
6.3 Resultados 80anteriormente (ver Seção 4.1.2), o método divi<strong>de</strong> o intervalo <strong>de</strong> ângulos <strong>em</strong> 8 partes <strong>de</strong>45 o . Um losango perfeito, com intervalos <strong>de</strong> 45 o , teria a seguinte configuração: 2 ângulos<strong>de</strong> 45 o e 2 ângulos <strong>de</strong> 135 ◦ , conforme a Figura 6.5-(A). De acordo com a Tabela 5.23esta combinação <strong>de</strong> ângulos é gerada a partir da forma presente na Figura 6.5-(B). Oprocesso <strong>de</strong> simplificação da ca<strong>de</strong>ia <strong>de</strong> contorno apresentado na Seção 5.7.3, transforma aFigura 6.5-(A) <strong>em</strong> um quadrado rotacionado 45 ◦ (ver Figura 6.5-(C)). Isto ocorre porqueo tamanho da ca<strong>de</strong>ia é s<strong>em</strong>pre reduzido a segmentos el<strong>em</strong>entares. Neste caso t<strong>em</strong>os aseguinte ca<strong>de</strong>ia: 3 n 5 n 7 n 1 n , ou seja, quatro segmentos diagonais.Figura 6.5: LosangoPor <strong>de</strong>finição, todo losango é também um paralelogramo. A Figura 6.5-(B) éum parelelogramo e, neste trabalho, está sendo adotado como uma forma “equivalente” aforma do losango. Depen<strong>de</strong>ndo da aplicação po<strong>de</strong>-se substituir os losangos, s<strong>em</strong> prejuízoalgum, por retângulos ou quadrados rotacionados 45 ◦ ou por paralelogramos, como estespresentes na Figura 6.5-(C) e 6.5-(B), respectivamente.Para a formação do conjunto <strong>de</strong> amostras, os usuários po<strong>de</strong>riam <strong>de</strong>senhar as 3formas presentes na Figura 6.5, sendo que as figuras (A) e (B) representariam losangos ea figura (C) representaria retângulos (ou quadrados <strong>de</strong>pen<strong>de</strong>ndo da relaçãolargura altura ). Umnovo teste foi executado mas <strong>de</strong>sta vez o conjunto dos losangos foi dividido <strong>em</strong> 2 grupos:1. grupo losango-paralelogramo, sketchs similares à Figura 6.5-(B), e2. grupo losango-losango, sketchs similares à Figura 6.5-(A).Os resultados obtidos nestes 2 grupos apresentam valores b<strong>em</strong> distintos. Parao grupo losango-paralelogramo o índice <strong>de</strong> reconhecimento foi <strong>de</strong> 92,39%. Já para ogrupo 2, losango-losango, o índice <strong>de</strong> reconhecimento é <strong>de</strong> apenas 5,26% das formasreconhecidas como losangos e 68,42% <strong>de</strong>sse conjunto <strong>de</strong> formas reconhecidos comoretângulos. Como afirmado anteriormente, as formas similares à forma 6.5-(A) acabaramsendo transformadas para quadrados ou retângulos rotacionados 45 ◦ .Esta “limitação” não prejudica a aplicabilida<strong>de</strong> do método pois, <strong>de</strong>pen<strong>de</strong>ndo dasformas utilizadas no fluxograma, basta que o usuário utilize um paralelogramo ou umquadrado (rotacionados 45 ◦ ) para que o sist<strong>em</strong>a reconheça como losango e o códigoapropriado possa ser gerado.
Conclusão e Trabalhos FuturosCAPÍTULO 7Para que o computador possa tratar s<strong>em</strong>anticamente imagens, é necessário queele possa reconhecer o seu conteúdo. Reconhecer uma imag<strong>em</strong>, para os seres humanos,é um processo trivial e bastante intuitivo. Para uma máquina, reconhecer uma imag<strong>em</strong> éum processo complexo e, muitas vezes, ambíguo. Apesar dos avanços alcançados, muitoainda resta ser feito.Como ocorre <strong>em</strong> outras áreas, a educação também po<strong>de</strong> se beneficiar dosavanços no reconhecimento <strong>de</strong> imagens. Em particular o reconhecimento <strong>de</strong> esboços po<strong>de</strong>contribuir, já que o <strong>de</strong>senho é uma forma natural <strong>de</strong> representação, bastante usado para acomunicação <strong>de</strong> i<strong>de</strong>ias e discussão <strong>de</strong> soluções.No ensino <strong>de</strong> programação <strong>de</strong> computadores, o uso <strong>de</strong> fluxogramas, por ser umarepresentação gráfica, torna o entendimento mais fácil e mais compreensível para estudantesiniciantes <strong>em</strong> computação do que a utilização código <strong>em</strong> linguag<strong>em</strong> <strong>de</strong> programação.Além disto, auxiliam no aprendizado, já que possu<strong>em</strong> uma sintaxe mínima que reduz ofoco na sintaxe, aumentando o esforço <strong>em</strong> análise.Para permitir o tratamento s<strong>em</strong>ântico dos fluxogramas <strong>em</strong> aplicações, é necessáriaa “compreensão” das representações utilizadas. Isto passa pelo “reconhecimento”automático das formas esboçadas pelo usuário.Este trabalho apresenta uma abordag<strong>em</strong> para o reconhecimento <strong>de</strong> esboços, utilizandoinformações extraídas a partir da forma do objeto. Para a extração <strong>de</strong> características,um método, baseado na técnica <strong>de</strong> Chain Co<strong>de</strong>, foi proposto para analisar a borda daimag<strong>em</strong>. Foi impl<strong>em</strong>entada uma ferramenta, fundamentada na abordag<strong>em</strong> proposta, parateste e validação do método proposto.A aplicação foi <strong>de</strong>senvolvida utilizando a plataforma Microsoft .Net Framework,já que esta possui suporte nativo para a utilização <strong>de</strong> tinta digital. A ferramenta <strong>de</strong>senvolvidaextrai, dos esboços, um conjunto <strong>de</strong> características necessárias para a i<strong>de</strong>ntificação eo reconhecimento das formas. As características utilizadas foram: as dimensões (altura elargura), o número <strong>de</strong> segmentos que compõe o contorno da imag<strong>em</strong> e os ângulos internosentre cada um segmentos.
7.1 Trabalhos Futuros 82Para avaliação do método uma base <strong>de</strong> imagens, contendo formas geométricasesboçadas por usuários, foi criada. O reconhecimento foi feito inicialmente pelos usuários,<strong>de</strong>pois por um revisor humano e, então, pelo sist<strong>em</strong>a <strong>de</strong>senvolvido. Os resultados obtidosdurante os testes mostraram a viabilida<strong>de</strong> do método proposto.O trabalho proposto é parte <strong>de</strong> um trabalho maior, que busca construir umaferramenta, com fins educacionais e didático-pedagógicos, para ser utilizada <strong>em</strong> cursosiniciais <strong>de</strong> Algoritmos e Programação <strong>de</strong> Computadores. Nela o aluno po<strong>de</strong>rá esboçar umfluxograma utilizando tinta digital, que será convertido para código fonte, que po<strong>de</strong>rá sertestado e avaliado, validando o raciocínio e o aprendizado dos alunos.É preciso consi<strong>de</strong>rar que o momento proporciona uma oportunida<strong>de</strong> <strong>de</strong> aproximarnovas tecnologias ao processo educativo como possibilida<strong>de</strong> <strong>de</strong> melhorar os tradicionaissist<strong>em</strong>as <strong>de</strong> ensino. Assim que as <strong>de</strong>mais partes do sist<strong>em</strong>a for<strong>em</strong> sendo <strong>de</strong>senvolvidas,testes mais próximos da realida<strong>de</strong> po<strong>de</strong>rão ser executados.O método, aqui apresentado, po<strong>de</strong> ser utilizado <strong>em</strong> qualquer área on<strong>de</strong> haja anecessida<strong>de</strong> <strong>de</strong> reconhecimento <strong>de</strong> formas geométricas. Novas formas ainda po<strong>de</strong>m seradicionadas a base <strong>de</strong> imagens, aumentando a capacida<strong>de</strong> <strong>de</strong> reconhecimento do método.A utilização <strong>de</strong> técnicas <strong>de</strong> Processamento <strong>de</strong> Imagens, CBIR e a análise das formaspresentes <strong>em</strong> fluxogramas foram essenciais para o <strong>de</strong>senvolvimento <strong>de</strong>sta dissertação.7.1 Trabalhos FuturosPrimeiramente, <strong>de</strong>ve-se <strong>de</strong>senvolver o processo <strong>de</strong> segmentação dos fluxogramaspara permitir uma caracterização completa dos fluxogramas. Este é um processo complexo,mas que po<strong>de</strong> ser impl<strong>em</strong>entado levando <strong>em</strong> consi<strong>de</strong>ração o domínio da aplicação.Além disto, novas idéias surgiram para a continuação futura do mesmo.Propõ<strong>em</strong>-se:• aceitar imagens não fechadas utilizando uma técnica que complete sua borda,• esten<strong>de</strong>r o reconhecimento para outros tipos <strong>de</strong> formas como letra e formas maiscomplexas,• verificar a existência <strong>de</strong> novas características que possam ser utilizadas para oreconhecimento das formas,• verificar a viabilida<strong>de</strong> <strong>de</strong> realizar treinamentos, por parte dos usuários e por partedo sist<strong>em</strong>a.O método apresentado neste trabalho se mostrou promissor. Com o <strong>de</strong>senvolvimento<strong>de</strong> outros trabalhos como:• animação do fluxograma, e
7.1 Trabalhos Futuros 83• a geração <strong>de</strong> código fonte a partir das formas reconhecidas.Um sist<strong>em</strong>a para reconhecimento e geração <strong>de</strong> código <strong>de</strong> máquina a partir <strong>de</strong>fluxogramas esboçados pelo usuário po<strong>de</strong>rá ser criado. Desta forma, o método propostoneste trabalho po<strong>de</strong>rá, novamente, ser testado <strong>em</strong> um ambiente real para avaliar suaaplicabilida<strong>de</strong> <strong>de</strong>ntro do sist<strong>em</strong>a.O processo <strong>de</strong> beautification também <strong>de</strong>ve ser avaliado. Um estudo <strong>de</strong>ve ser feitocom o intuito <strong>de</strong> escolher a melhor maneira <strong>de</strong> utilizá-lo <strong>de</strong>ntro do sist<strong>em</strong>a: qual técnicaescolher, qual o momento <strong>de</strong> executar o beautification <strong>de</strong> cada forma e do fluxograma.Com a criação <strong>de</strong> um sist<strong>em</strong>a que reconheça e execute fluxogramas, outrastarefas também po<strong>de</strong>m ser executadas <strong>de</strong> maneira automatizada: correção automática,agrupamento <strong>de</strong> esboços similares e recuperação <strong>de</strong> fluxogramas que ger<strong>em</strong> o mesmorestultado.Utilizar outras características, como a cor, po<strong>de</strong>m expandir as possibilida<strong>de</strong> <strong>de</strong>reconhecimento. Por ex<strong>em</strong>plo, <strong>em</strong> um fluxograma retângulos po<strong>de</strong>m ser utilizados pararepresentar entrada/saída <strong>de</strong> dados. Com a utilização <strong>de</strong> duas cores distintas, po<strong>de</strong>-seutilizar a mesma forma para representar funções diferentes: um retângulo azul po<strong>de</strong>riarepresentar Entrada <strong>de</strong> Dados e um retângulo vermelho po<strong>de</strong>ria representar Saída <strong>de</strong>dados.
Referências Bibliográficas[1] ALBUQUERQUE, M. P.; ALBUQUERQUE, M. P. Processamento <strong>de</strong> imagens:métodos e análises. Editora da FACET, Rio <strong>de</strong> Janeiro, 2001.[2] ALMEIDA, C. W. D.; POEL, J. V. D.; BATISTA, L. V.; AMORIM, H. L. E. Análise <strong>de</strong>formas baseada no método da curvature scale space para tumores <strong>de</strong> câncer<strong>de</strong> mama. In: IV SBQS - V Workshop <strong>de</strong> Informática Médica, 2005.[3] AMBRÓSIO, A. P.; GONDIM, H. W. A. S. Esboço <strong>de</strong> fluxogramas no ensino <strong>de</strong>algoritmos. In: WEI - Workshop sobre Educação <strong>em</strong> Computação 2008, Belém doPará - PA. Anais do WEI 2008, 2008.[4] AMORIN, S. R. L.; CHERIAF, M. Sist<strong>em</strong>a <strong>de</strong> in<strong>de</strong>xação e recuperação <strong>de</strong> informação<strong>em</strong> construção baseado <strong>em</strong> ontologia. III Encontro <strong>de</strong> Tecnologia <strong>de</strong> Informaçãoe Comunicação na Construção Civil, p. 1–8, 2007.[5] ASLANDOGAN, Y. A.; YU, C. T. Techniques and syst<strong>em</strong>s for image and vi<strong>de</strong>oretrieval, 1999.[6] BACH, J. R.; FULLER, C.; GUPTA, A.; HAMPAPUR, A.; HOROWITZ, B.; HUMPHREY,R.; JAIN, R.; SHU, C.-F. Virage image search engine: An open framework forimage manag<strong>em</strong>ent. In: Storage and Retrieval for Image and Vi<strong>de</strong>o Databases(SPIE), p. 76–87, 1996.[7] BAGNALL, B.; OUTROS. C# Para Programadores Java. Alta Books, 2005.[8] BALAN, A. G. R.; TRAINA, A. J. M.; TRAINA JR, C.; AZEVEDO-MARQUES, P. M.Integrando textura e forma para a recuperação <strong>de</strong> imagens por conteúdo. Anaisdo IX Congresso Brasileiro <strong>de</strong> Informática <strong>em</strong> Saú<strong>de</strong> (CBIS 2004), 1(1):1–6, 2004.[9] BARROS, R. A. B.; RIBEIRO, C. H. C. Impl<strong>em</strong>entação <strong>de</strong> métodos e classes<strong>de</strong> processamento <strong>de</strong> imagens para sist<strong>em</strong>a <strong>de</strong> navegação robótica. Technicalreport, Instituto Tecnológico <strong>de</strong> Aeronáutica, Conselho Nacional <strong>de</strong> DesenvolvimentoCientífico e Tecnológico, São José dos Campos, SP, 2005.
Referências Bibliográficas 85[10] BARTOLINI, I.; CIACCIA, P.; PATELLA, M. Warp: Accurate retrieval of shapes usingphase of fourier <strong>de</strong>scriptions and time warping distance. IEEE Trans. PatternAnalysis and Machine Intelligence, 27(1):142–147, 2005.[11] BELONGIE, S.; MALIK, J.; PUZICHA, J. Shape maching and object recognitionsusing shape context. IEEE Trans. Pattern Analysis and Machine Intelligence,24(4):509–522, 2002.[12] BERRETTI, S.; BIMBO, A. D.; PALA, P. Retrieval by shape similarity with perceptualdistance and effective in<strong>de</strong>xing. IEEE Transactions on Multimedia, 2(4):225–239, 2000.[13] BIMBO, A. D.; PALA, P. Visual image retrieval by elastic matching of usersketches. IEEE Transactions on Multimedia, 19(2):121–132, 1997.[14] BRIBIESCA, E. A new chain co<strong>de</strong>. The Journal of the Pattern Recognition Society,32:235–251, 1999.[15] BRUNELLI, R.; MICH, O. On the use of histograms for image retrieval. MultimediaComputing and Syst<strong>em</strong>s, International Conference on, 2:143, 1999.[16] BUCHANAN, J. Review of syntactic methods in pattern recognition by k. s. fu.SIGART Bull., p. 11–11, 1974.[17] CASTANON, C. A. B. Recuperação <strong>de</strong> imagens por conteúdo através <strong>de</strong> anális<strong>em</strong>ultiresolução por wavelets. Master’s thesis, Instituto <strong>de</strong> Ciências Mat<strong>em</strong>áticas e<strong>de</strong> Computação (ICMC), 2003.[18] CHAKRABARTI, K.; ORTEGA-BINDERBERGER, M.; PORKAEW, K.; MEHROTRA, S.Similar shape retrieval in mars. In: Multimedia and Expo, 2000. ICME 2000. 2000IEEE International Conference on, volume 2, p. 709–712 vol.2, 2000.[19] CREWS, T.; ZIEGLER, U. The flowchart interpreter for introductory programmingcourses. In: FIE ’98: Proceedings of the 28th Annual Frontiers in Education, p. 307–312, Washington, DC, USA, 1998. IEEE Computer Society.[20] CRUZ, H. S.; BRIBIESCA, E.; DAGNINO, R. M. R. Effiency of chain co<strong>de</strong>s torepresent binary objects. Pattern Recognition, 1(40):1600–1674, 2007.[21] DAS, M.; PAULIK, M.; LOH, N. A bivariate autoregressive technique for analysisand classification of planar shapes. IEEE Transactions on Pattern Analysis andMachine Intelligence, 12(1):97–103, 1990.
Referências Bibliográficas 86[22] DATTA, R.; LI, J.; WANG, J. Z. Content-based image retrieval - approaches andtrends of the new age. Intl. Workshop on Multimedia Information Retrieval - ACMMultimedia, 2005.[23] DAVIES, E. R. Machine Vision: Theory, Algorithms, Practicalities. Aca<strong>de</strong>micPress, Amsterdam, 1997.[24] DUDEK, G.; TSOTSOS, J. K. Shape representation and recognition from multiscalecurvature. Comput. Vis. Image Un<strong>de</strong>rst., 68(2):170–189, 1997.[25] EITZ, M.; HILDEBRAND, K.; BOUBEKEUR, T.; ALEXA, M. A <strong>de</strong>scriptor for largescale image retrieval based on sketched feature lines. In: Eurographics Symposiumon Sketch-Based Interfaces and Mo<strong>de</strong>ling, p. 29–38, 2009.[26] ERPEN, L. R. C. Recuperação <strong>de</strong> informação visual. In: II Jornada do Conhecimentoe da Tecnologia, Porto Alegre - RS - Brasil, 2000.[27] FONSECA, M. J. C. M. Sketch-Based Retrieval in Large Sets of Drawings. PhDthesis, Universida<strong>de</strong> Técnica <strong>de</strong> Lisboa - Instituto Superior Técnico, Lisboa - Portugal,2004.[28] FRANCISCANI, J. D. F. Redução do gap s<strong>em</strong>ântico <strong>em</strong> cbir utilizando ontologia<strong>de</strong> objeto, 2008.[29] FREEMAN, H. Computer processing of line drawing images. ACM ComputingSurveys, 6(1):57–97, 1974.[30] GONCALVES, D. B.; COSTA, Y. M. G.; BRUSCAGIM, M.; SILVA, G. C. Recuperação<strong>de</strong> imagens por combinação dos aspectos cromático e estrutural,2005.[31] GONZALEZ, R. C.; WOODS, R. E. Digital Image Processing - Second Edition.Prentice Hall, 2002.[32] GOSHTASBY, A. Description and discrimination of planar shapes using shap<strong>em</strong>atrices. IEEE Transactions, 7(6):738–743, 2009.[33] GROSKEY, W. I.; MEHROTRA, R. In<strong>de</strong>x-based object recognition in pictorial datamanag<strong>em</strong>ent. Computer Vision, Graphics, and Image Processing, 52(3):416–436,1990.[34] HAMMOND, T. Enabling instructors to <strong>de</strong>velp sketch recognition applicationsfor the classroom. 37th ASEE/IEEE Frontiers in Education Conference, 1(1):11–16,2007.
Referências Bibliográficas 87[35] HAMMOND, T. LADDER: A Perceptually-based Languge to Simplify SketchRecognition User Interface Development. PhD thesis, MIT - PhD Thesis, 2007.[36] HAMMOND, T. Sketch recognition at texas a&m university. Brown Workshop onPen-Centric Computing March 25, p. 1–6, 2007.[37] HAMMOND, T.; DAVIS, R. Lad<strong>de</strong>r, a sketching language for user interface<strong>de</strong>velopers. Comput. Graph., 29(4):518–532, 2005.[38] HAMMOND, T.; EOFF, B.; PAULSON, B.; WOLIN, A.; DAHMEN, K.; JOHNSTON, J.;RAJAN, P. Free-sketch recognition: Putting the chi in sketching. In: CHI ’08: CHI’08 exten<strong>de</strong>d abstracts on Human factors in computing syst<strong>em</strong>s, p. 3027–3032, NewYork, NY, USA, 2008. ACM.[39] HE, Y.; KUNDU, A. 2-d shape classification using hid<strong>de</strong>n markov mo<strong>de</strong>l. IEEETransactions on Pattern Analysis and Machine Intelligence, 13(11):1172–1184, 1991.[40] HOSTINS, H.; RAABE, A. Auxiliando a aprendizag<strong>em</strong> <strong>de</strong> algoritmos com aferramenta webportugol. Anais do XXVII Congresso da SBC, p. 96–105, 2007.[41] ZHANG, D. Image Retrieval Based on Shape. PhD thesis, Monash University, 2002.[42] HU, M. K. Visual pattern recognition by moment invariants. IRE Transactions onInformation Theory, 8(2):179–187, 1962.[43] JACOBSON, R. E.; KASTER, B. L.; HAMMOND, D. T. Sousa: The sketch-basedonline user stydy application. Eurographics 5th Annual Workshop on Sketch-Based Interfaces and Mo<strong>de</strong>ling, p. 81–88, 2008.[44] KARA, L. B. An image-based trainable symbol recognizer for sketch-basedinterfaces. In: in AAAI Fall Symposium Series 2004: Making Pen-Based InteractionIntelligent and Natural, p. 99–105. AAAI Press, 2004.[45] KASHYAP, K. L.; CHELLAPPA, R. Stochastic mo<strong>de</strong>ls for closed boundary analysis:Representation and reconstruction. IEEE Transaction on Information Theory,27(5):627–637, 1981.[46] KATA, T.; KURITA, T.; OTSU, N.; HIRATA, K. Sketch retrieval method for full colorimage database - query by visual example. 11th IAPR International Conference onPattern Recognition ,Conference A: Computer Vision and Applications, 1(1):530–533,1992.[47] KISHI, A. K.; FANG, C. Ferramenta para análise <strong>de</strong> informções do olhar. Trabalho<strong>de</strong> Formatrua Supervisionado - Universida<strong>de</strong> <strong>de</strong> São Paulo - Instituto <strong>de</strong> Mat<strong>em</strong>áticae Estatística - Departamento <strong>de</strong> Ciência da Computação, 2007.
Referências Bibliográficas 88[48] LANDRÉ, J.; TRUCHETET, F. Image regrieval with binary hamming distance.VISAPP (2), p. 237–240, 2007.[49] LATECKI, L. J.; LAKAMPER, R. Shape similarity measure based on correspon<strong>de</strong>nceof visual parts. IEEE trans. Pattern Analysis and Machine Intelligence,22(10):1185–1190, 2000.[50] LEUNG, W. H.; CHEN, T. User-in<strong>de</strong>pen<strong>de</strong>nt retrieval of free-form hand-drawnsketches, 2002.[51] LIU, Y. K.; ZALIK, B. An efficient chain co<strong>de</strong> with huffman coding. The Jounal ofthe Pattern Recognition Society, 38:553–557, 2004.[52] LONG, H. Z.; LEOW, W. K.; CHUA, F. K. Perceptual texture space for contentbasedimage retrieval. In: In Proc. Int. Conf. on Multimedia Mo<strong>de</strong>ling (MMM 2000),p. 167–180, 2000.[53] LU, G. J.; SAJJANHAR, A. Region-based shape representation and similarity measuresuitable for content-based image retrieval. Multimedia Syst<strong>em</strong>s, 7(2):165–174, 2000.[54] MARINE, F. J. S. Automatic recognition of biological shapes with and withoutrepresentation of shape. Artificial Intelligence in Medicine, 18(2):173–186, 2000.[55] MEER, P.; GEORGESCU, B. Edge <strong>de</strong>tection with <strong>em</strong>bed<strong>de</strong>d confi<strong>de</strong>nce. IEEETransactions on Pattern Analysis and Machine Intelligence, 23(12):1351–1365, 2001.[56] MEHTRE, B. M.; KANKANHALLI, M. S.; LEE, W. F. Shape measures for contentbased image retrieval: A comparison. Information Processing & Manag<strong>em</strong>ent,33(3):319–337, May 1997.[57] MENDES, A. J. N.; GOMES, A. J. Sicas: Interactive syst<strong>em</strong> for algorithm <strong>de</strong>velopmentand simulation, 2001.[58] MOKHTARIAN, F.; ABBASI, S.; KITTLER, J. Robust and efficient shape in<strong>de</strong>xingthrough curvature scale space. In: In Proceedings of British Machine VisionConference, p. 53–62, 1996.[59] MORENO, R. A.; FURUIE, S. S. Biram: Sist<strong>em</strong>a para recuperação <strong>de</strong> imagenspor conteudo. Anais do X Congresso Brasileiro <strong>de</strong> Informática <strong>em</strong> Saú<strong>de</strong>, 1(1):554–559, 2006.[60] MURUGAPPAN, S.; SELLAMANI, S.; RAMANI, K. Towards beautification of freehandsketches using suggestions. In: SBIM ’09: Proceedings of the 6th Eurographics
Referências Bibliográficas 89Symposium on Sketch-Based Interfaces and Mo<strong>de</strong>ling, p. 69–76, New York, NY, USA,2009. ACM.[61] NUNES, A. M.; FILETO, R. Uma arquitetura para recuperação <strong>de</strong> informaçãobaseada <strong>em</strong> s<strong>em</strong>ântica e sua aplicação no apoio a jurisprudência. Anais da IIIEscola Regional <strong>de</strong> Banco <strong>de</strong> Dados (ERBD) - Caxias do Sul - RS, 2007.[62] OTTERLOO, P. J. V. A contour-oriented approach to shape analysis. Prentice HallInternational, 1(1):90–108, 1991.[63] PAULA, L. B. D.; PINHEIRO, M. G.; ROSA, N. A.; FIGUEIREDO, L. R. D.; AZEVEDO-MARQUE.; MAZZONCINI, P. Sist<strong>em</strong>a para recuperação <strong>de</strong> mamografias com base<strong>em</strong> conteúdo: Extração do vetor <strong>de</strong> características. Revista Iluminart, 1(1):124–137, 2009.[64] PAULSON, B.; HAMMOND, T.; WOLIN, A. Sort, merge, repeat: An algorithm foreffectively finding corners in hand-sketched strokes, 2000.[65] PAULSON, B.; HAMMOND, T. Paleosketch: accurate primitive sketch recognitionand beautification. In: IUI ’08: Proceedings of the 13th international conference onIntelligent user interfaces, p. 1–10, New York, NY, USA, 2008. ACM.[66] PENTLAND, A.; PICARD, R. W.; SCLAROFF, S. Photobook: Content-based manipulationof image databases, 1995.[67] PRASAD, B. G.; BISWAS, K. K.; GUPTA, S. K. Region-based image retrievalusing integrated color, shape and location in<strong>de</strong>x. In: Computer Vision & ImageUn<strong>de</strong>rstanding, Vol.94, No.1-3 (April 2004) pp 193-233, ISSN, p. 193–233, 2003.[68] PRINCE, C. Using clustering to assist un<strong>de</strong>rstanding of digital ink in lowattention environments, 2005. Acessado <strong>em</strong> 20/05/2010.[69] RAFIEI, D.; MENDELZON, A. O. Efficient retrieval of similar shapes. The VLDBJournal, 11(1):17–27, 2002.[70] RODRIGUES, R. J.; SILVA, E.; THOMÉ, A. C. G. Feature extraction using contourprojection. 5th World Multi-Conference on Syst<strong>em</strong>ics, Cybernetics and Informatics -SCI 2001, Orlando, Florida, 13(1):561–566, 2001.[71] RODRIGUES JR., M. C. Experiências positivas para o ensino <strong>de</strong> algoritmos,2004.[72] RUI, Y. A modified fourier <strong>de</strong>scriptor for shape matching in mars. In: Chang,S. K., editor, Image Databases and Multimedia Search, Series of Software Engn.
Referências Bibliográficas 90and Knowledge Engn., volume 8, p. 165–180. World Scientific Publishing, Singapore,1998.[73] RUI, Y.; SHE, A.; HUANG, T. Modified fourier <strong>de</strong>scriptors for shape representation– a practical approach. In: Proc of First International Workshop on ImageDatabases and Multi Media Search., 1996.[74] RUI, Y.; HUANG, T. S.; CHANG, S.-F. Image retrieval: Current techniques,promising directions, and open issues. Journal of Visual Communication andImage Representation, 1(39):39–62, 1999.[75] SAJJANHAR, A. A technique for similarity retrieval of shapes. Master’s thesis,Monash University , Australia, 1997.[76] SALEM, A.-B. M.; SEWISY, A. A.; ELYAN, U. A. A vertex chain co<strong>de</strong> approach forimage recognition. GVIP, 05(V3), 2005.[77] SANTANA, R. C. D. Uma aplicação <strong>de</strong> cbir à análise <strong>de</strong> imagens médicas <strong>de</strong>imuno-histoquímica utilizando morfologia mat<strong>em</strong>ática e espectro <strong>de</strong> padrões,2008.[78] SANTOS, C. D. F. D. Uso <strong>de</strong> saliências do contorno via esqueletização pararecuperação <strong>de</strong> imagens. Master’s thesis, Universida<strong>de</strong> Fe<strong>de</strong>ral <strong>de</strong> Uberlândia,2007.[79] SCANLAN, D. A. Structured flowcharts outperform pseudoco<strong>de</strong>: An experimentalcomparison. IEEE Softw., 6(5):28–36, 1989.[80] SEKITA, I.; KURITA, T.; OTSU, N. Complex autoregressive mo<strong>de</strong>l for shaperecognition. IEEE Transactions on Pattern Analysis and Machine Intelligence,14(4):489–496, 1992.[81] SHI, J.; MALIK, J. Normalized cuts and image segmentation. IEEE Transactionson Pattern Analysis and Machine Intelligence, 22(12):888–905, 2000.[82] SILVA, L. S. P.; GONZAGA, A. Recuperação <strong>de</strong> sub-imag<strong>em</strong> baseada <strong>em</strong>conteúdo utilizando algoritmo bic e realimentação <strong>de</strong> relevância. Anais do WVC2006 - II WORKSHOP DE VISÃO COMPUTACIONAL, 1(1):190–193, 2006.[83] SILVA, L. O. Bookish - uma ferramenta para contextualização <strong>de</strong> documentosutilizando mineração <strong>de</strong> textos e expansão <strong>de</strong> consulta, 2009.[84] SMEULDERS, A. W. M.; WORRING, M.; SANTINI, S.; GUPTA, A.; JAIN, R. Contentbasedimage retrieval at the end of the early years. IEEE Transactions on PatternAnalysis and Machine Intelligence, 22(12):1349–1380, 2000.
Referências Bibliográficas 91[85] SMITH, J. R.; CHANG, S.-F. Visualseek: a fully automated content-based imagequery syst<strong>em</strong>. In: MULTIMEDIA ’96: Proceedings of the fourth ACM internationalconference on Multimedia, p. 87–98, New York, NY, USA, 1996. ACM.[86] SMITH, J.; CHANG, S.-F. Automated binary texture feature sets for image retrieval.In: Acoustics, Speech, and Signal Processing, 1996. ICASSP-96. ConferenceProceedings., 1996 IEEE International Conference on, volume 4, p. 2239–2242, May1996.[87] SONKA, M.; HLAVAC, V.; BOYLE, R. Image Processing, Analysis and MachineVision. Chapman and Hall Computing, 1993.[88] TUCERYAN, M.; JAIN, A. K. Texture Analysis, chapter 2, p. 207–248. WorldScientific Publishing Co., second edition, 1998.[89] VELTKAMP, R. C. Shape matching - similarity measures and algorithms. In: IEEEPress - Proceedings Shape Mo<strong>de</strong>lling International, p. 188–197, 2001.[90] WANG, B.; SUN, J.; PLIMMER, B. Exploring sketch beautification techniques. In:CHINZ ’05: Proceedings of the 6th ACM SIGCHI New Zealand chapter’s internationalconference on Computer-human interaction, p. 15–16, New York, NY, USA, 2005.ACM.[91] ZHANG, D.; LU, G. A comparative study of three region shape <strong>de</strong>scriptors. In:Digital Image Computing Techniques and Applications, p. 21–22, 2002.[92] ZHOU, X. S.; HUANG, T. S. Relevance feedback in image retrieval: A compeensivereview. Multimedia Syst<strong>em</strong>s, 1(8):536–544, 2003.
APÊNDICE AEx<strong>em</strong>plos <strong>de</strong> formas <strong>de</strong>senhadas pelos usuáriosFigura A.1: Ex<strong>em</strong>plos <strong>de</strong> Círculos
Apêndice A 93Figura A.2: Ex<strong>em</strong>plos <strong>de</strong> ElipsesFigura A.3: Ex<strong>em</strong>plos <strong>de</strong> Hexágonos
Apêndice A 94Figura A.4: Ex<strong>em</strong>plos <strong>de</strong> QuadradosFigura A.5: Ex<strong>em</strong>plos <strong>de</strong> Retângulos
Apêndice A 95Figura A.6: Ex<strong>em</strong>plos <strong>de</strong> LinhasFigura A.7: Ex<strong>em</strong>plos <strong>de</strong> Losangos
Apêndice A 96Figura A.8: Ex<strong>em</strong>plos <strong>de</strong> TriângulosFigura A.9: Ex<strong>em</strong>plos <strong>de</strong> Trapézios