• Nenhum resultado encontrado

Seleção de características usando algoritmos genéticos para classificação de imagens de textos em manuscritos e impressos

N/A
N/A
Protected

Academic year: 2021

Share "Seleção de características usando algoritmos genéticos para classificação de imagens de textos em manuscritos e impressos"

Copied!
113
0
0

Texto

(1)

Genéticos para Classificação de Imagens de Textos

em Manuscritos e Impressos

Por

Gleydson Vilanova Viana Coelho

Dissertação de Mestrado Profissional

Universidade Federal de Pernambuco posgraduacao@cin.ufpe.br www.cin.ufpe.br/~posgraduacao

(2)

Pós-Graduação em Ciência da Computação

Gleydson Vilanova Viana Coêlho

Seleção de Características usando Algoritmos

Genéticos para Classificação de Imagens de Textos

em Manuscritos e Impressos

Este trabalho foi apresentado à

Pós-Graduação em Ciência da

Compu-tação do Centro de Informática da

Universidade Federal de Pernambuco

como requisito parcial para obtenção

do grau de Mestre Profissional em

Ci-ência da Computação.

Orientador: Prof. George Darmiton da Cunha Cavalcanti

(3)

Catalogação na fonte

Bibliotecária Jane Souto Maior, CRB4-571

Coelho, Gleydson Vilanova Viana

Seleção de características usando algoritmos genéticos para classificação de imagens de textos em manuscritos e impressos / Gleydson Vilanova Viana Coelho. - Recife: O Autor, 2013.

112 f.: il., fig., tab.

Orientador: George Darmiton da Cunha Cavalcanti.

Dissertação (mestrado profissional) - Universidade Federal de Pernambuco. CIn, Ciência da Computação, 2013.

Inclui referências.

1. Inteligência Artificial. 2. Redes Neurais. 3. Processamento de imagem. I. Cavalcanti, George Darmiton da Cunha (orientador). II. Título.

(4)

Universidade Federal de Pernambuco, sob o título, “Seleção de Características usando Algoritmos Genéticos para Classificação de Imagens de Textos em Manuscritos e Impressos”, orientada pelo Professor George Darmiton da Cunha Cavalcanti e aprovada pela Banca Examinadora formada pelos professores:

______________________________________________ Prof. Tsang Ing Ren

Centro de Informática / UFPE

______________________________________________ Prof. Wellington Pinheiro dos Santos

Núcleo de Engenharia Biomédica / UFPE

_______________________________________________

Prof. George Darmiton da Cunha Cavalcanti Centro de Informática / UFPE

Visto e permitida a impressão. Recife, 26 de março de 2013.

___________________________________________________ Profª. EDNA NATIVIDADE DA SILVA BARROS

CoordenadorA da Pós-Graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco.

(5)

A Força Divina, por me manter no caminho da serenidade superando

esse e outros desafios.

A minha família, pelo apoio e incentivo.

Ao professor Dr. George Darmiton, por me conduzir através de suas

orientações, pela compreensão e paciência com minhas dificuldades.

Aos amigos de curso, em especial a José Wallace, Cézar Corado e

sua esposa Ana Costa por toda ajuda e companheirismo nessa longa

jornada.

A Dra. Cristina Miranda e ao Centro Universitário UNINOVAFAPI

pelo apoio e confiança.

(6)

A presença de textos manuscritos e impressos em um mesmo documento repre-senta um grande desafio para os atuais mecanismos de Reconhecimento Óptico de Caracteres. Uma vez que essas classes de texto possuem suas próprias rotinas de reconhecimento, o uso de técnicas que permitam diferenciação entre elas tornou-se indispensável e o bom funcionamento dessas técnicas depende da escolha de carac-terísticas que melhor representem os elementos de texto sobre os quais os classifi-cadores devem atuar. Considerando que na literatura existe uma grande variedade de características utilizadas para este fim, este trabalho objetiva o desenvolvimento de um método que permita, através de um processo de otimização com Algorit-mos Genéticos e a partir de um conjunto inicial de 52 características, a seleção de subconjuntos de melhores características que, além de menores que o conjunto ori-ginal, possibilitem melhoria dos resultados de classificação. Os experimentos foram realizados com classificadores kNN e Redes Neurais MLP a partir de imagens de palavras segmentadas. O método proposto foi avaliado fazendo uso de uma base de dados pública para textos manuscritos e outra criada especificamente para este trabalho para textos impressos. Os resultados dos experimentos mostram que os objetivos propostos foram alcançados. Os Erros Médios de Classificação foram es-tatisticamente equivalentes para os dois classificadores e uma melhor performance foi obtida com o kNN. A influência dos diferentes tipos de fontes e estilos utiliza-dos nos textos impressos também foi analisada e mostrou que as fontes que imitam textos manuscritos como a "Lucida Handwriting" e "Comic Sans MS" apresentam maiores ocorrências de erros de classificação. Da mesma forma, a maioria dos erros foi percebida nos textos impressos com estilo itálico.

Palavras-chaves

Diferenciação entre Textos Manuscritos e Impressos, Otimização, Redução de Di-mensionalidade, Seleção de Características, Algoritmos Genéticos, kNN, Redes Neu-rais MLP

(7)

The presence of printed and handwriting text in a document represents a major chal-lenge to existing mechanisms for Optical Character Recognition. Once these two classes have their own text recognition routines, the use of techniques to differen-tiate them has become indispensable and the good functioning of these techniques depends on the choice of features which best represent the text elements on which classifiers should act. Whereas in the literature there are a variety of features used for this purpose, this study develops a method for selection of subsets of best features through optimization with Genetic Algorithms that provide improved classification results. The experiments were performed from an initial set of 52 features using kNN and Neural Networks MLP as classifiers and word images taken from docu-ments. The proposed method was evaluated using a public database for handwriting and other created specifically for this work for printed texts. The experimental re-sults show that the proposed objectives were achieved. Average Classification Errors were statistically equivalent for both classifiers and better performance was obtained using kNN. The influence of different types of fonts and styles used in printed texts was also analyzed and showed that the fonts that are similar to handwriting as "Lu-cida Handwriting" and "Comic Sans MS" have highest frequency of misclassification. Likewise, most errors in the printed texts was perceived with italic style.

Keywords

Differentiation between Printed and Handwriting Text , Optimization, Dimensiona-lity Reduction, Feature Selection, Genetic Algorithms, kNN, MLP Neural Networks

(8)

Figura 2.1 Estágios de Processamento de Imagens . . . 19

Figura 2.2 Classificação de madeira por sistema de visão artificial . . . 20

Figura 2.3 Histograma para detectar linhas . . . 25

Figura 2.4 Esqueletização de caractere . . . 25

Figura 2.5 Distância Convex Hull . . . 28

Figura 2.6 Segmentação de sentenças com Redes Neurais . . . 28

Figura 2.7 Estrutura de Árvore de Decisão . . . 32

Figura 2.8 Neurônios biológicos e o processo de sinapse . . . 33

Figura 2.9 Representação de um Neurônios Artificial . . . 33

Figura 2.10 Rede Neural MLP com três camadas . . . 34

Figura 2.11 Funções de pertinência: (a) triangular, (b) trapezoidal, (c) gaussiana . . . 35

Figura 2.12 Escolha do valor de K . . . 36

Figura 3.1 Segmentação de palavras em textos impressos (a) e manus-critos (b) . . . 39

Figura 3.2 Etapas para classificação de tipos de textos . . . 40

Figura 3.3 Zona Ascendente . . . 43

Figura 3.4 Zona Descendente . . . 44

Figura 3.5 Perfil Superior - Inferior . . . 45

Figura 3.6 Projeção Horizontal do Perfil Superior-Inferior . . . 45

Figura 3.7 Projeção Vertical . . . 46

Figura 3.8 Projeção Horizontal . . . 47

Figura 3.9 Filtros para detecção de contornos verticais . . . 50

Figura 3.10 Texto Impresso: fontes desconectadas . . . 54

Figura 3.11 Texto Manuscrito: maior número de conexões . . . 54

Figura 4.1 Erro observado em função da variação da dimensionalidade . 57 Figura 4.2 Fenômeno do Pico . . . 58

Figura 4.3 Espaço de busca . . . 59

Figura 5.1 Codificação clássica de um AG . . . 66

Figura 5.2 Mutação . . . 69

Figura 5.3 Recombinação ou Crossover . . . 70

Figura 5.4 Ciclo de execução dos AGs . . . 70

(9)

Figura 6.3 Relação entre cromossomo e características selecionadas . . . 78

Figura 6.4 Arquitetura de Teste . . . 79

Figura 7.1 Exemplos de Patches Manuscritos . . . 82

Figura 7.2 Exemplo de Patch Impresso . . . 83

Figura 7.3 Validação Cruzada K-Fold . . . 85

Figura 7.4 Determinação do número de neurônios na camada escondida 86 Figura 7.5 Variação do Erro Médio e Desvio Padrão para diferentes per-centuais de seleção com kNN . . . 89

Figura 7.6 Histograma de Características Selecionadas kNN . . . 90

Figura 7.7 Variação do Erro Médio e Desvio Padrão para diferentes per-centuais de seleção com Redes Neurais . . . 93

Figura 7.8 Histograma de Seleção de Características utilizando Redes Neurais . . . 94

Figura 7.9 Erros de classificação com fonte "Adobe Caslon Pro" e kNN . 103 Figura 7.10 Erro de classificação com fonte "Calibri" e kNN . . . 103

Figura 7.11 Erros de classificação com fonte "Comic Sans MS" e kNN . . 103

Figura 7.12 Erros de classificação com fonte "Lucida Handwriting" e kNN 103 Figura 7.13 Erro de classificação com fonte "Times New Roman" e kNN . 104 Figura 7.14 Erros de classificação com fonte "Adobe Caslon Pro" e RNA . 104 Figura 7.15 Erro de classificação com fonte "Myriad Pro Cond" e RNA . 104 Figura 7.16 Erros de classificação com fonte "Comic Sans MS" e RNA . . 104 Figura 7.17 Erros de classificação com fonte "Lucida Handwriting" e RNA 105 Figura 7.18 Erros de classificação com fonte "Times New Roman" e RNA 105

(10)

Tabela 7.1 Tipos e Estilos de Fontes . . . 83

Tabela 7.2 Médias de Alturas dos Patches . . . 84

Tabela 7.3 Erros de classificação com kNN para cada fold . . . 88

Tabela 7.4 Erros médios de classificação com kNN . . . 88

Tabela 7.5 Erros médios para diferentes percentuais de seleção com kNN 89 Tabela 7.6 Características selecionadas por fold utilizando kNN . . . 90

Tabela 7.7 Melhores Características selecionadas com kNN . . . 91

Tabela 7.8 Características menos selecionadas com kNN . . . 91

Tabela 7.9 Erros de classificação com Redes Neurais para cada fold . . . 92

Tabela 7.10 Erros médios de classificação com Redes Neurais . . . 92

Tabela 7.11 Erros médios para diferentes percentuais de seleção com Re-des Neurais . . . 93

Tabela 7.12 Características selecionadas por fold utilizando Redes Neurais 94 Tabela 7.13 Características mais selecionadas com Redes Neurais . . . 95

Tabela 7.14 Características menos selecionadas com Redes Neurais . . . . 95

Tabela 7.15 Características selecionadas em ambos os classificadores . . . 96

Tabela 7.16 Resultados comparativos com o Estado da Arte . . . 97

Tabela 7.17 Resultados dos Testes Estatísticos - Grupo 1 . . . 99

Tabela 7.18 Resultados dos Testes Estatísticos - Grupo 2 . . . 100

Tabela 7.19 Resultados dos Testes Estatísticos - Grupo 3 . . . 101

Tabela 7.20 Erros por Fonte e Estilo utilizando kNN . . . 102

Tabela 7.21 Erros por Fonte e Estilo utilizando Redes Neurais . . . 102

(11)

Resumo 5

Abstract 6

1 Introdução 13

1.1 Motivação . . . 13

1.2 Objetivos e Escopo da Proposta . . . 15

1.3 Organização do Trabalho . . . 16

2 Processamento de Documentos 17 2.1 Apresentação . . . 17

2.2 Análise e Interpretação de Imagens . . . 17

2.3 Arquitetura de Sistemas de Reconhecimento de Texto . . . 19

2.3.1 Aquisição . . . 19

2.3.2 Pré-processamento . . . 21

2.3.3 Segmentação . . . 26

2.3.4 Extração de Características . . . 28

2.3.5 Reconhecimento . . . 31

3 Diferenciação entre Manuscritos e Impressos: Abordagens da Litera-tura 38 3.1 Visão Geral . . . 38

3.2 Trabalhos Realizados . . . 39

3.3 Revisão de Características . . . 42

3.3.1 Características Baseadas em Aspecto . . . 43

3.3.2 Características Baseadas em Projeções . . . 44

3.3.3 Características Baseadas em Densidade . . . 47

3.3.4 Características Baseadas em Segmentos Contínuos . . . 50

3.3.5 Características Baseadas em Transições . . . 51

3.3.6 Baseadas em Perfis . . . 52

3.3.7 Características Baseadas em Cursividade . . . 53

3.3.8 Características Baseadas em Desvios . . . 54

4 Seleção de Características 56 4.1 Visão Geral . . . 56

(12)

4.3.1 Ponto de Partida . . . 60 4.3.2 Função de Avaliação . . . 60 4.3.3 Estratégia de Busca . . . 61 4.3.4 Abordagem de Funcionamento . . . 62 4.3.5 Critério de Parada . . . 62 5 Busca Genética 64 5.1 Características Gerais . . . 64 5.2 Codificação . . . 65 5.3 População Inicial . . . 66 5.4 Função de Avaliação . . . 66 5.5 Seleção . . . 67 5.6 Reprodução . . . 68 5.7 Operadores Genéticos . . . 69 5.8 Funcionamento . . . 70 6 Método Proposto 72 6.1 Apresentação . . . 72 6.2 Arquitetura de Treinamento . . . 72 6.2.1 Visão Geral . . . 72

6.2.2 Banco de Dados de Treinamento . . . 74

6.2.3 Extrator de Características . . . 74 6.2.4 Seletor de Características . . . 78 6.2.5 Avaliador . . . 78 6.3 Arquitetura de Testes . . . 78 7 Experimentos e Resultados 80 7.1 Apresentação . . . 80 7.2 Estrutura do Programa . . . 80

7.3 Montagem do Banco de Dados . . . 81

7.3.1 Manuscritos . . . 81

7.3.2 Impressos . . . 82

7.3.3 Normalização dos Patches . . . 84

7.4 Validação do Modelo . . . 84

7.5 Parametrização Adotada . . . 85

7.6 Resultados . . . 87

7.6.1 Experimentos com kNN . . . 88

7.6.2 Experimentos com Redes Neurais Artificiais . . . 92

7.6.3 Melhores Características Comuns . . . 96

7.6.4 Comparativo com o Estado da Arte . . . 96

7.6.5 Testes Estatísticos . . . 97

(13)

8.1.1 Seleção de Características . . . 106

8.1.2 Redução do Erro Médio de Classificação . . . 106

8.1.3 Desempenho . . . 107

8.1.4 Influência de Tipo e Estilo de Fontes . . . 107

8.2 Trabalhos Futuros . . . 108

(14)

1 Introdução

1.1 Motivação

A linguagem humana é considerada como o mais complexo de todos os sistemas de signos1 e sua manifestação através da escrita é um fantástico recurso para represen-tação de ideias e difusão de informação desenvolvido com o evoluir das sociedades desde o surgimento dos primeiros pictogramas2 há milhares de anos [1]. Com a evo-lução tecnológica nos últimos anos, o uso do computador permitiu que documentos eletrônicos começassem a ser produzidos, eliminando as desvantagens dos documen-tos físicos e, além disso, permitindo a criação de mecanismos de busca que tornaram muito mais ágeis o acesso e recuperação da informação.

Essa transição todavia, não eliminou documentos que foram produzidos em formato não eletrônico. Sejam manuscritos ou impressos, muitos desses documentos pos-suem informações importantes cuja recuperação tem sido foco de muitas pesquisas nos últimos anos. Em decorrência, houve um progresso significativo em diversas áreas da computação e em especial nos estudos sobre reconhecimento de padrões, inteligência artificial e visão computacional, uma vez que aplicações comerciais para automatização de tarefas e recuperação de informações a partir desses documentos passaram a ser tecnicamente viáveis.

Neste contexto, a tecnologia de OCR (Optical Character Recognition) para reconhe-cimento eletrônico de caracteres passou a ser amplamente utilizada objetivando a obtenção de informações a partir de textos impressos pré-existes. Conversões de livros e documentos em arquivos eletrônicos, automação de entrada de dados, re-conhecimento de assinaturas, mineração de textos e outras aplicações passaram a fazer parte do nosso cotidiano.

Esta tarefa, entretanto, mostrou-se bastante complexa pois, no processo de análise documental, é comum encontrarmos documentos denominados mistos onde conteúdo impresso coexiste com informações manuscritas. Além disso, muitas vezes em meio

1Entidades em que sons, sequências de sons ou suas correspondências gráficas estão ligados com

significados ou conteúdos

2Forma de escrita com origem na antiguidade através da qual ideias são transmitidas por meio

de desenhos.

(15)

a toda essa informação, existem elementos com função puramente estética ou or-ganizacional como traços, caixas e imagens e, não pouco frequente, ruídos como manchas e pontos provocados pelo tempo ou resultantes de processos de fotocópia. Kavallieratou e Stamatatos [2] reforçam que um grande número de aplicações fa-zem uso de documentos mistos. Petições, requerimentos, pedidos de matrícula em faculdades, cartas, requerimentos, memorandos, envelopes e cheques bancários são alguns exemplos.

Podemos observar, desta forma, que um obstáculo considerável para Sistemas Re-conhecimento Óptico de Caracteres é a mistura de textos impressos e manuscritos em uma mesma imagem de documento [3]. A presença dessas duas classes de texto em um mesmo documento representa um desafio cuja melhor abordagem pode re-sultar em um aumento na precisão do processo de reconhecimento e extração de informações de textos.

A prática tem mostrado que, em documentos mistos, a pouca similaridade entre textos manuscritos e impressos resulta na utilização de métodos de reconhecimento bastante diferentes para cada caso. Por esta razão, faz-se necessário que um pro-cedimento específico para distinção entre esses tipos de textos seja executado a fim de direcionar o processo de reconhecimento para os métodos mais adequados a cada tipo de texto. Neste contexto, desenvolveu-se tecnologias de ICR (Intelligent Cha-racter Recognition) voltadas ao reconhecimento de caCha-racteres com estilos de fontes não previamente definidos como ocorre no caso de documentos manuscritos.

Data a importância da questão, vários trabalhos voltados para esta temática surgi-ram nos últimos anos. Os estudos na área têm convergido para soluções compostas por uma sequência de etapas com atribuições distintas conforme detalharemos no Capítulo 2. Para a maioria dos métodos propostos, temos em comum a necessi-dade das etapas de aquisição, pré-processamento e segmentação para preparação das imagens de texto a serem analisadas. Em seguida, uma etapa de extração de características é necessária para a conversão dessas imagens em representações nu-méricas que serão utilizados no processo de predição de classes. Esta última etapa, por sua vez, faz o uso de classificadores como Redes Neurais, Árvores de Decisão e Máquinas de Vetores de Suporte.

Seguindo esse modelo e considerando a etapa de extração de características, obser-vamos que um grande variedade de características tem sido proposta por pesquisa-dores e aplicadas a diferentes métodos de classificação. Silva et al. [4], por exemplo, propõem um conjunto de nove características com esse objetivo. Shirdhonkar [3] trabalha um conjunto diferente composto por oito características. Indermuhle [5], por sua vez, fazendo uso de dados obtidos a partir de histogramas, consegue extrair um total de 152 características.

Verificamos, portanto, que a etapa de extração de características é bastante impor-tante no problema de distinção entre textos manuscritos e impressos e que a escolha

(16)

do conjunto de características para aplicação a este problema tem sido feita, muitas vezes, de maneira empírica. Na literatura verificamos a existência de um grande nú-mero de propostas de diferentes técnicas para a extração de características a partir de imagens de texto. Silva [6], entretanto, afirma que conforme se aumenta o nú-mero de características também se aumentam os graus de irrelevância e redundância podendo levar ao problema conhecido como "Maldição da Dimensionalidade". Para Camargo [7], o uso de muitas variáveis de entrada para modelar um conjunto de dados pode desnecessariamente complicar a interpretação dos modelos criados vio-lando o princípio da parcimônia. De acordo com este princípio, sempre que possível, devemos considerar um menor número de variáveis em um modelo, de forma que ele possa ser mais facilmente interpretado.

Nesse contexto, a seleção das melhores características é um passo importante para o bom funcionamento dos métodos de diferenciação entre manuscritos e impressos. Na prática, esse processo implica em determinarmos, a partir de um conjunto ca-racterísticas, um subconjunto que apresente menor redundância e maior relevância de informações. Para isso, em geral um algoritmo de busca é utilizado para ge-rar subconjuntos de características candidatos que são enviadas para um módulo de avaliação onde a qualidade de cada solução é estimada até que um critério de parada seja atingido [6].

Observamos que não existem muitos estudos que tratem da seleção de características aplicados especificamente ao problema de distinção entre manuscritos e impressos. Desta forma, trabalhos nessa área podem contribuir para o desenvolvimento dos sistemas de reconhecimento de escrita de uma forma geral, uma vez que rotinas de classificação de tipos de texto costumam estar presentes neles.

1.2 Objetivos e Escopo da Proposta

Este trabalho objetiva propor um método para seleção de características aplicado ao problema da distinção entre textos impressos e manuscritos. O método fará uso de Algoritmos Genéticos para busca de soluções (subconjunto de características) e de classificadores kNN e Redes Neurais MLP para avaliação dessas soluções. Esperamos ainda obter um ganho nos resultados de classificação fazendo uso das características selecionadas pelo método proposto. Como objetivos específicos podemos mencionar:

1. Construir um banco de dados de imagens palavras impressas;

2. Pesquisar e implementar diversas técnicas de extração de características à partir imagens de texto;

3. Comparar os resultados obtidos utilizando o classificador kNN com os obtidos com Redes Neurais MLP;

(17)

4. Comparar os resultados obtidos pelo método proposto com os obtidos no es-tado da arte;

5. Avaliar a capacidade de generalização do método e a validade estatística dos resultados;

1.3 Organização do Trabalho

Este trabalho está divido em oito capítulos. No presente capítulo apresentamos a motivação, objetivos e escopo da dissertação. O segundo capítulo faz uma revisão sobre os principais conceitos e técnicas envolvidos do processamento eletrônico de documentos e que são importantes para o entendimento do restante do trabalho. No capítulo 3 abordamos a problemática que motivou este trabalho e que trata da diferenciação entre textos impressos e manuscritos. Ainda neste capítulo, promove-mos uma revisão da literatura sobre abordagens de diversos autores e sobre métodos de extração de características.

O capítulo 4 é destinado ao estudo das técnicas de redução de dimensionalidade que servem de base para a proposta deste trabalho. No referido capítulo, apresentamos ainda o problema conhecido como Maldição da Dimensionalidade e o Fenômeno do Pico, e na sequência, técnicas de seleção de características organizadas em etapas. No quinto capítulo apresentamos uma revisão sobre Busca Genética, uma vez que esse conhecimento será necessário em nossa proposta de trabalho.

O capitulo 6 é destinado a apresentação do método proposto e detalha o uso de Algoritmos Genéticos em conjunto com os classificadores KNN e Redes Neurais MLP no processo de seleção de características aplicado ao problema de diferenciação entre manuscritos e impressos. O experimentos realizados e os resultados obtidos são detalhados no capitulo 7 e finalmente a conclusão e as sugestões para trabalhos futuros são apresentadas no oitavo capítulo.

(18)

2 Processamento de Documentos

2.1 Apresentação

Neste capítulo faremos uma revisão sobre os principais conceitos envolvidos na área de processamento eletrônico de imagens com ênfase em analise de documentos e reconhecimentos de textos.

Em princípio, trataremos de uma forma geral sobre reconhecimento e interpretação de imagens digitais e, em seguida, direcionaremos para as especifidades do traba-lho com imagens de documentos apresentando a arquitetura básica dos sistemas de reconhecimento de texto e detalhando as principais técnicas utilizadas em cada etapa.

2.2 Análise e Interpretação de Imagens

A área do processamento de imagens tem se desenvolvido bastante nos últimos anos e permeado por vários ramos da atividade humana. Na medicina, por exemplo, podemos observar o crescente do uso de imagens para realização de diagnósticos e o desenvolvimento de equipamentos cada vez mais sofisticados que facilitam a interpretação dessas imagens. Da mesma forma, as tarefas laboratoriais também foram bastante beneficiadas, uma vez que novas técnicas permitem, por exemplo, contagens de células a partir de imagens de microscópios com grande precisão [8]. Várias outras áreas como a Geografia, Sensoriamento Remoto, Geoprocessamento e Meteorologia através do processamento de imagens de satélite, a robótica utilizada na automação industrial, a Astronomia em suas pesquisa sobre novos planetas e estrelas, a Segurança com o reconhecimento facial e de escrita, entre outras, vêm sendo beneficiadas com os avanços nas áreas de processamento de imagens e visão por computador.

A Análise e Interpretação de Imagens está inserido no campo da Inteligencia Arti-ficial e concentra duas áreas principais de aplicação:

(19)

• Melhoria da informação visual para permitir uma interpretação humana mais precisa.

• Processamento ou análise automática das imagens para descobrimento, iden-tificação e entendimento de padrões que sejam relevantes para o problema em estudo.

Em imagens de documentos, por exemplo, os padrões de interesse são os caracteres encontrados nos mesmos e o objetivo principal, neste caso, é identificá-los da forma mais parecida possível com a capacidade humana de realização dessa tarefa.

Segundo Gonzalez e Woods [9], um sistema de análise automática de imagens deve possuir as seguintes características:

1. Habilidade de extrair informações pertinentes a partir de um fundo de detalhes irrelevantes;

2. Capacidade de aprender a partir de exemplos e de generalizar o conhecimento de maneira que ele possa ser aplicado em circunstâncias novas e diferentes; 3. Habilidade de fazer inferências a partir de informações incompletas.

Podemos observar que essas habilidades se traduzem em um certo grau de inteligên-cia. Entretanto, no atual estado da arte da análise de imagens por computador, a performance obtida ainda é muito inferior a dos humanos e normalmente voltada a soluções de problemas altamente especializados, como podemos observar, por exem-plo, nas distintas aplicações para reconhecimento facial, biometria e escrita. As técnicas empregadas no processo de análise de imagens podem ser organizadas em três níveis[9]:

• Baixo nível: é composto pelas etapas que tratam da aquisição e tratamento inicial da imagem. Neste nível, nenhuma inteligência é necessária e inclui processos automáticos como compensações, redução de ruídos, etc.

• Nível Intermediário: faz uso da imagem produzida pelo nível anterior e

procura extrair elementos que caracterizem componentes da mesma. Este

nível compreende ainda a etapa de segmentação da imagem exigindo algum grau de inteligência para esta tarefa.

• Alto nível: envolve o reconhecimento e interpretação da imagem. Abrange os aspectos relativos a cognição através da percepção de padrões, delineamento de classes e técnicas de classificação que tornam o sistema especialista em um dado domínio de problema.

De uma maneira geral, os sistemas de análise e interpretação de imagens são divi-didos em 5 estágios básicos representado na Figura 2.1:

(20)

Figura 2.1: Estágios de Processamento de Imagens

Na Seção 2.3 detalharemos cada um desses estágios aplicados ao contexto dos siste-mas de reconhecimento de textos.

2.3 Arquitetura de Sistemas de Reconhecimento de

Texto

2.3.1 Aquisição

A visão humana é um complexo sistema biológico que permite interpretar a radiação eletromagnética dentro de um determinado espectro de frequência. Este processo engloba as reações mecânicas do olho humano, o processo de conversão da radiação visível em sinais neuronais que ocorre na retina e as operações de processamento que ocorrem no cérebro. De uma forma geral, os sistemas biológicos se destacam pela capacidade de se adaptarem com facilidade a situações novas, e às vezes ad-versas, como condições deficientes de iluminação, informação imprecisa ou parcial, deformação da imagem e outros fatores desafiadores.

Os sistemas de visão artificial, por sua vez, fazem uso dos conhecimentos oriundos da biologia e de outras áreas como matemática, mecânica e eletrônica para o de-senvolvimento de técnicas e produtos que permitam a produção de imagem digitais por meio de sensores. Os sensores são dispositivos físicos sensíveis à energia irra-diada pelos objetos do qual se pretende adquirir imagens, convertendo-as em sinais elétricos proporcionais à intensidade da energia recebida.

(21)

Do sensor, estes sinais são encaminhados ao Hardware de Aquisição responsável pela digitalização do sinal e por realizar um pré-processamento sobre estes dados antes de enviá-los ao computador. Em visão computacional, câmeras, sonares e scanners são exemplos de sensores utilizados. Gomes et al. [10], em seu trabalho sobre classificação de tábuas, fazem uso de câmeras que captam imagens das peças de madeira sobre uma esteira rolante conforme detalhado na Figura 2.2 [10].

Figura 2.2: Classificação de madeira por sistema de visão artificial

Quando tratamos processamento de documentos, a visão artificial para aquisição de imagens, consiste em obter imagens eletrônicas a partir de documentos em papel, microfilme, etc. Cada imagem eletrônica é um conjunto de pontos chamados pixels e que, de uma forma discreta, representam os componentes do documento original. Normalmente a entrada de um sistema de reconhecimento de caracteres se dá atra-vés da digitalização de documentos por meio de um scanner ou atraatra-vés de câmeras (abordagem off-line). Entretanto, para textos manuscritos é possível ainda a utiliza-ção de um hardware específico constituído por uma superfície sensível e uma caneta especial usados principalmente na captação de assinaturas (abordagem on-line). Os OCR’s são essencialmente do tipo off-line, enquanto os ICR’s podem ser de ambos os tipos.

Dependendo da necessidade da aplicação, as imagens podem ser adquiridas em preto e branco, em graduações de nível de cinza ou coloridas. Quanto maior o número de níveis de cinza, maior é a riqueza de detalhes da imagem, porém, maior também a necessidade de espaço para o armazenamento e os procedimentos para manipulação

(22)

geralmente são complexos e mais lentos. Imagens coloridas seguem essa mesma linha de raciocínio representando ainda mais restrições em aplicações práticas, principal-mente devido a volumes de documentos, espaço de armazenamento e velocidade de processamento.

As técnicas atualmente utilizadas para processamento de documentos fazem, em grande parte, uso de imagens binárias ou em poucos níveis de cinza para minimizar, desta forma, os fatores abordados acima. Além disso, outro aspecto que precisa ser observado durante o processo de aquisição de imagens de documentos diz respeito à necessidade de obtê-las com a melhor qualidade possível, evitando que sejam adi-cionadas informações indesejáveis como ruídos e interferências1 ou que informações importantes sejam truncadas.

2.3.2 Pré-processamento

Esta etapa é necessária para assegurar que a imagem digitalizada do documento satisfaça as condições exigidas pelo método utilizado. O pré-processamento tem como principal objetivo a implementação de técnicas de preparação e correção da imagem. Existem várias técnicas de pré-processamento dentre as quais podemos destacar:

Correção de Inclinação

Um problema muito comum na fase de aquisição de documentos é que o uso incorreto do dispositivo digitalizador resulte em imagens inclinadas. No caso de documentos manuscritos, a ausência de linhas de pauta como guia podem contribuir para in-clinação durante o próprio processo de escrita. Nos documentos impressos, esse problema é particularmente comum quando o processo de digitalização é feito de forma manual e precisa ser corrigido para que não prejudique as etapas posteriores. A correção da inclinação também é essencial para o bom desempenho de sistemas de reconhecimento automático. Para isso, objetos existentes na estrutura do texto como linhas e imagens são utilizados para que se determine o nível de inclinação do documento que, a rigor, deve ser igual a zero. Algumas técnicas para correção de inclinação são mencionadas em Marcaro et al.[11] e relacionadas a seguir:

• Técnicas Baseadas em Análise de Projeção: Esses métodos baseados em análise de projeção assumem que uma imagem é formada por regiões de texto organizadas em linhas paralelas. A detecção do ângulo é feita projetando essa

1Os ruídos dizem respeito a existência informações aleatórias e indesejadas que degradam a

(23)

região de texto em vários ângulos e decidindo, dentre esses, qual o ângulo escolhido que otimiza uma determinada função objetivo.

• Técnicas Baseadas na Transformada de Hough: Estes métodos, admi-tem que uma característica comum às regiões textuais é o alinhamento dos caracteres e o paralelismo das linhas de texto. A transformada de Hough converte os pares de coordenadas cartesianas (x, y) dos pixels da imagem do documento em curvas nas coordenadas polares (r, j) segundo a equação: r = xcos(j) + ysen(j). Pixels pretos alinhados (formando linhas) na imagem geram picos no plano de Hough e permitem identificar o ângulo (j) dessas linhas, ou seja, a inclinação do documento.

• Técnicas Baseadas em Agrupamento de Vizinhos Mais Próximos: Estes métodos assumem que os caracteres em uma linha encontram-se alinha-dos e próximos uns aos outros. A detecção da inclinação ocorre através do agrupamento dos pixels pretos na imagem em componentes conectados para identificação dos caracteres e, depois, agrupam-se esses caracteres em blocos maiores, de acordo com alguma medida de similaridade. A inclinação é cal-culado baseando-se em distâncias e outros relacionamentos espaciais entre as linhas de texto.

• Técnicas Baseadas em Correlação Cruzada: As técnicas baseadas em correlação partem do princípio que o texto sem inclinação possui uma estrutura horizontal homogênea. Essas técnicas fazem a divisão da imagem em faixas verticais e calculam alguma medida de correlação entre faixas adjacentes para encontrar o ângulo de inclinação do documento.

• Técnicas Baseadas em Paralelogramos: Baseiam-se na ideia de que um documento é composto por uma combinação de objetos retangulares, tais como linhas de texto, figuras, tabelas, etc. O que essas técnicas fazem é construir paralelogramos em vários ângulos e decidir qual dentre eles melhor se adapta aos objetos da imagem baseado no tamanho da região branca do plano de fundo. Quando o ângulo de inclinação está próximo ao ângulo real, essa região é maior.

Limiarização

Esta técnica visa reduzir a quantidade de dados a serem tratados, eliminar ruídos e facilitar e extração de componentes existentes no documento sendo importante para o processo de segmentação do documento. A limiarização pode ser feita analisando a similaridade dos níveis de cinza da imagem e realçando os objetos de interesse através da seleção de um limiar T (Thresholding) que separa os agrupamentos de níveis de cinza e realiza um processo de binarização onde, a partir do valor limiar,

(24)

transforma os dados em níveis de cinza da imagem para preto e branco. Basicamente os pixels com valor menor que o limiar são transformados em pretos e os pixels com valor maior ou igual ao limiar são transformados em brancos.

Basicamente dois tipos de limiarização podem ser aplicadas. Para imagens de texto uniformes cujo fundo sofre pouca variação de cor ou iluminação, um valor único de limiar pode ser aplicado. Este modelo é chamada de limiarização global. Con-tudo, existem documentos onde um único valor de limiar global não pode ser usado pois existem grandes variações dentro das regiões de primeiro e segundo planos como no caso de documentos cujo fundo possui áreas coloridas. Para este tipo de imagem, os valores de limiar diferentes são requeridos para áreas de locais diferentes. Neste caso, utilizamos técnicas de limiarização adaptativa. Na literatura encontra-mos vários métodos de limiarização. Olivete e Rodrigues [12]citam quatro métodos clássicos:

• Método Otsu: o valor do limiar é obtido globalmente, supondo que os pontos da imagem podem ser classificados em duas classes que são o fundo e o objeto, considerando as variâncias entre as classes e a variância total;

• Método Pun: é baseado na teoria da informação, que se baseia na premissa de que a geração de informação pode ser modelada como um processo proba-bilístico. Por esta teoria define-se a entropia do objeto e do fundo da imagem e o limiar global é obtido calculando o argumento máximo entre estes dois valores da entropia;

• Método Niblack: o valor do limiar é obtido de forma adaptativa através da análise do valor da média e do desvio padrão nas regiões da imagem;

• Método Rosenfeld: um método adaptativo, onde o limiar é obtido atra-vés de duas análises: uma pixel a pixel, para a obtenção das probabilidades de intensidade de cada pixel e uma segunda análise para a qualificação da compatibilidade dos mesmos de cada região.

Redução de Ruído

Ruídos são dados indesejados inseridos na imagem do documento e podem ter as mais diversas origens como ajuste incorretos do equipamento de digitalização e até mesmo a qualidade do documento a ser digitalizado. O ruído é intrínseco aos pro-cessos e, ao contrário das interferências, não pode ser totalmente eliminado mas apenas minimizado. Alguns tipos de ruídos comuns que podem afetar imagens de documentos são:

(25)

• Bordas nas imagens: regiões grandes e escuras que ocorrem nas bordas dos documentos normalmente causadas durante o processo de digitalização; • Transferência de tinta do verso: manchas ou pontos provocados pela

mi-gração de tinta de impressões no verso do documento através porosidade do papel do documento.

Existem algumas técnicas disponíveis para atuar na remoção ou minimização de ruídos aplicadas no formato de filtros. Os filtros de passa baixa também conhecidos como filtros de suavização são empregados na remoção ruídos de alta frequência espacial em imagens digitais. Ruídos que geralmente são introduzidos durante o processo de conversão analógica-digital.

Entre as técnicas de suavização podem ser conservativas ou não conservativas. A primeira procura eliminar o ruído mantendo os detalhes de altas frequências como os contornos da imagem. Essa técnica é especialmente desenvolvida para remover picos de ruído como ruídos "sal e pimenta", entretanto não se aplica a outros tipos de ruído. As técnicas de suavização não conservativas, geralmente eliminam detalhes como linhas finas e curvas agudas, causando um efeito conhecido como bluring. Segue dois exemplos de filtros largamente utilizados:

• Filtros de média: Neste caso, o nível de cinza de cada pixel é substituído pela média da sua vizinhança. Para implementar um filtro convolui-se a imagem por uma máscara cujos coeficientes são todos iguais a 1 e divide-se o resultado pelo total de pixels da máscara. As máscaras mais usadas são de 3 x 3, 5 x 5 e 7 x 7. Máscaras maiores podem ser usadas, porém a imagem sofrerá grande atenuação prejudicando bastante a nitidez da imagem.

• Filtros de Mediana: Nesta técnica, o nível de cinza de cada pixel é subs-tituído pelo valor mediano de níveis de cinza na vizinhança daquele pixel. O valor mediano m de um conjunto de valores é tal que metade dos valores no conjunto são menores que m e metade dos valores são maiores que m. A fim de implementar o filtro da mediana o primeiro passo é ordenar os valores da vizinhança que pode ser 3x3, 5x5, 7x7 ou até maiores de acordo com a neces-sidade. Em seguida toma-se o valor central da classificação e atribui-se esse valor ao pixel que deverá será substituído.

Exclusão de Linhas

As linhas são estruturas utilizadas nos documento normalmente para delimitar cam-pos de escrita, como nomes, datas, valores, etc. Muitas vezes a eliminação dessas estruturas é necessária para que as mesmas não atrapalhem as fases de segmentação e reconhecimento. Um técnica simples para a remoção de linhas consiste no uso de projeções do histograma horizontal e vertical da imagem para detectar e remover as

(26)

linhas. Se as linhas não estão inclinadas, podem ser separadas através do picos e vales conforme Figura 2.3 [13].

Figura 2.3: Histograma para detectar linhas

Para o caso de documentos com linhas inclinadas é preciso verificar se não existe uma inclinação no documento como um todo. Nesses casos, alguma das técnicas de correção de inclinação mencionadas anteriormente poderia ser utilizada. Caso contrário, essa técnica não seria a mais indicada.

Thinning

Este processo consiste em reduzir a quantidade de informação de um objeto ao mínimo necessário resultando em sua representação com linhas finas (Figura 2.4).

Figura 2.4: Esqueletização de caractere

O processo de thinning objetiva facilitar a análise dos dados pois, além de favorecer uma análise estrutural simples e um projeto mais intuitivo de algoritmos de reconhe-cimento, elimina algumas distorções no contorno enquanto mantém as propriedades geométricas e topológicas. Em resumo a esqueletização permite uma representação mais fácil de extraírem-se características em uma imagem como pontos extremos, junções, conexões, etc.

Existem várias técnicas de esqueletização baseados em algoritmos sequenciais ou paralelos. Os algoritmos sequenciais apresentam bons resultados mas exigem muito tempo de processamento. Já os algoritmos paralelos, caracterizam-se pela velocidade mas, por vezes, originam esqueletos com falhas.

Um algoritmo paralelo bastante utilizado é o de Zhang-Suen[14]. Este algoritmo consiste na aplicação sucessiva de duas etapas. Na primeira etapa, um pixel I(i, j) é eliminado (ou marcado para ser eliminado posteriormente) nas seguintes condições:

(27)

1. A conectividade deve ser única;

2. Deve-se ter pelo menos dois vizinhos não nulos e não mais que seis; 3. Pelo menos um pixel de I(i, j + 1), I(i − 1, j) e I(i, j − 1) deve ser zero; 4. Pelo menos um pixel de I(i − 1, j), I(i + 1, j) e I(i, j − 1) deve ser zero; No final desta etapa os pixels marcados são eliminados. Na segunda etapa as con-dições 1 e 2 são as mesmas, mas as concon-dições 3 e 4 são alteradas para:

1. Pelo menos um pixel de I(i − 1, j), I(i, j + 1) e I(i + 1, j) deve ser zero; 2. Pelo menos um pixel de I(i, j + 1), I(i + 1, j) e I(i, j − 1) deve ser zero; E, novamente os pixels marcados são eliminados. A primeira etapa deve ser aplicada a todos os pixels de borda; se as condições forem aceitas, o pixel deve ser marcado para ser eliminado ao final da primeira etapa. O mesmo deve ser feito com a segunda etapa. Esse procedimento deve ser aplicado iterativamente até que não haja mais pixels para serem eliminados.

2.3.3 Segmentação

O próximo passo no processamento de imagens de documentos é a segmentação. Este processo particiona o domínio espacial de uma imagem em subconjuntos mu-tuamente exclusivos. As diversas técnicas existentes para segmentação de uma ima-gem, geralmente, baseiam-se na descontinuidade ou na similaridade das propriedades básicas de valores de níveis de cinza, de cores e de texturas [15].

Portanto, nesta etapa a imagem é dividida, isolando apenas as partes ou os obje-tos de interesse da aplicação e, de uma maneira geral, o que muiobje-tos métodos de segmentação fazem é agrupar, de alguma forma, os pixels com mesma propriedade, isto é, mesma intensidade, cor ou região com textura semelhante. Existem diversas técnicas para segmentação de imagens, dependendo do domínio estudado. Seguem algumas técnicas usadas:

• Global: baseada em conhecimento global, relativo à intensidade do pixel. A segmentação é efetuada varrendo-se a imagem, pixel a pixel, e rotulando-os como sendo parte do objeto que se deseja isolar ou do fundo, dependendo se o nível de cinza daquele pixel for maior ou menor que um limiar T .

• Baseada em Regiões: baseada na divisão da imagem em regiões que exibem propriedades similares. A mais simples dessas abordagens é a agregação de pixels, que começa com um conjunto de pontos "semente" e, a partir deles, cresce as regiões anexando a cada ponto semente aqueles pixels que possuam propriedades similares (como nível de cinza, textura ou cor).

(28)

• Baseada em Bordas: baseada em técnicas para detecção de borda para achar o contorno fechado da imagem. Uma borda é o limite entre duas regiões com propriedades relativamente distintas. As bordas na imagem caracterizam os contornos dos objetos e são bastante úteis para segmentação e identificação de objetos na cena. Pontos de borda podem ser entendidos como as posições dos pixels com variações abruptas de níveis de cinza. Os pontos de borda caracterizam as transições entre objetos diferentes.

Para o caso da aplicação em processamento de documentos, a segmentação se carac-teriza pelo isolamento de componentes do texto. Os possíveis tipos de segmentação, do mais macro ao de menor magnitude, subdividem a imagem em: documento; texto; blocos de linhas, que formam as colunas da imagem; parágrafos compostos por uma ou mais linhas de texto; linhas de texto isoladamente; palavras; caracteres ou componentes dos caracteres [16].

Tomando a segmentação em linhas como o primeiro passo nesse processo, a forma mais intuitiva de se efetuar esta tarefa é através das projeções vertical ou horizontal. Tais projeções mostram a frequência de pixels de texto presentes em cada linha ou coluna da imagem e é aplicável a textos cuja inclinação é nula ou mínima. Cada pico presente na projeção representa uma região de texto. Os espaçamentos entre os picos correspondem às regiões de ausência de texto.

Uma vez feita a segmentação em linhas, uma das maneiras mais comumente utilizada para realizar a segmentação da linha em palavras é dada pelos seguintes passos [15]: 1. Encontrar os componentes conectados da imagem: componentes conectados são os elementos da imagem do documento que representam palavras inteiras, letras isoladas ou até mesmo segmentos de letras. Podem ser isolados na forma de Bounding Boxes que correspondem ao menor retângulo que envolve totalmente um elemento do texto;

2. Calcular a distância entre eles (Bounding Boxes). Pode ser a distancia Eucli-diana, mínima, máxima, ou alguma heurística.

3. Escolher um limiar que determine quais das distâncias calculadas são de com-ponentes de uma mesma palavra e quais não são.

Para esta técnica que utiliza métricas de distâncias (Gap Metric), é possível verificar que a segmentação de texto em documentos impressos é mais simples e precisa que em textos manuscritos uma vez que o primeiro trabalha com distâncias de valor fixo e o segundo sofre imprevisíveis variações ocorrendo até mesmo a conexão entre os caracteres (inexistência de espaçamento).

Outros dois métodos de segmentação específicos para textos manuscritos são apre-sentados em [16]. O primeiro método baseia-se na técnica Convex Hull. Nesta

(29)

técnica, os Bounding Boxes cedem lugar ao uso ao menor polígono capaz de envol-ver o componente de texto. A distância Convex Hull consiste na distância euclidiana entre os dois pontos de interseção entre a reta traçada e as cascas convexas conforme figura abaixo:

Figura 2.5: Distância Convex Hull

O segundo método de segmentação faz uso de Redes Neurais Artificiais (RNA). Para este fim a técnica cria representações de imagens linhas de texto manuscritos através da extração de um conjunto de nove grandezas geométricas (características) que servirão como entrada para o classificador. As características são extraídas da esquerda para a direita através de uma janela deslizante na largura de um pixel e altura da imagem. A saída do classificador identifica, desta forma, cada coluna como pertencente a uma palavra ou ao espaçamento entre palavras. (Figura 2.6)

Figura 2.6: Segmentação de sentenças com Redes Neurais

2.3.4 Extração de Características

O objetivo de um sistema de processamento de imagens é classificar os elementos presentes na mesma. Para o sucesso desta missão, é necessário que as classes de ob-jetos sejam bem distinguidas umas das outras, e isso é realizado em reconhecimento de padrões através da exploração das características ou atributos desses objetos. Imagens digitais podem ser representadas por modelos matemáticos como matrizes cujas características em vários níveis de complexidade como bordas, cantos, pontos, texturas, formatos e movimentos podem ser identificadas e extraídas. Em uma imagem de satélite, por exemplo, é possível extrair a tracejado de ruas e avenidas. As características extraídas compõem assim um conjunto de valores numéricos que devem representar os dados de entrada em uma processo de classificação. Estes

(30)

valores compõe um vetor de características e cada classe se apresenta como um ponto em um espaço n-dimensional. Desta forma, vetores pertencentes a diferentes classes, devem ocupar regiões compactas e disjuntas no espaço de características. Em imagens de documentos, as características podem ser definidas como o conjunto de informações mais relevantes para a classificação do objeto de texto analisado (ca-racter, palavra, etc). No processamento de imagens de documentos existem várias técnicas para extração de características cuja escolha é considerada como um im-portante fator para obtenção de melhor desempenho do sistema. Cruz et al. [17] apresentam, por exemplo, cinco técnicas para extração de características aplicáveis a dígitos manuscritos:

• Características Estruturais: consiste em calcular as projeções horizontal, vertical, radial e os profiles radiais In-Out e Out-In da imagem de entrada nor-malizada (32x32 pixels) do dígito em análise. As três projeções correspondem, respectivamente, a soma dos pixels pretos, nas linhas, colunas e partindo do centro geométrico da imagem e caminhando em direção a borda em ângulos pré-definidos com intervalos de 5 graus. Os dois profiles radiais são semelhan-tes à projeção radial, mas, no lugar de somas, utilizam a posição do primeiro e último pixel preto, respectivamente. As características obtidas são então somadas para formar um único vetor com 280 características.

• Mapa de bordas: esta técnica consiste em extrair segmentos de linhas ho-rizontais, verticais e diagonais que representem o caracter em uma imagem redimensionada para uma de tamanho 25x25 pixels após ter sido aplicado na mesma uma estratégia de thinning. Quatro novas imagens são obtidas com o resultado desse processo que juntamente com a imagem original, são divididas em 25 partes de tamanhos 5x5 pixels cada. Para cada parte, o percentual de pixels pretos é calculado, obtendo para cada imagem um vetor com 25 caracte-rísticas e perfazendo nas cinco imagens um vetor único com 125 caractecaracte-rísticas. • Projeções de Imagem: para esta técnica foram utilizadas as projeções di-agonais e radiais. A projeção radial é calculada agrupando os pixels pela sua distância ao centro da imagem. A projeção diagonal, por sua vez, é obtida agrupando os pixels nas linhas diagonais. Nesta técnica, a imagem é dividida em quatro partes e as projeções extraídas para cada quadrante. Os valores de cada projeção são então normalizados através da divisão pelo maior valor possível e são combinados para formar um único vetor contendo 128 caracte-rísticas (16 para cada projeção radial, e 32 para cada projeção diagonal). • Zoneamento: consiste em dividir uma imagem em várias regiões e calcular o

percentual de pontos pretos para cada região. O autor utilizou 13 configurações diferentes (3x1, 1x3, 2x3, 3x2, 3x3, 1x4, 4x1, 4x4, 6x1, 1x6, 6x2, 2x6 e 6x6) obtendo um total de 123 características.

(31)

• Medida de Concavidades: A ideia desta técnica é fazer uma busca, para cada pixel branco da imagem, considerando quatro direções, com o objetivo de saber para quais direções a busca não encontrou nenhum pixel preto. Nos casos em que um pixel preto é alcançado nas quatro direções, uma nova busca é lançada utilizando quatro direções auxiliares para garantir que o pixel está dentro de uma área fechada. Esta técnica retorna um total de 78 características e maiores detalhes podem ser encontrados em [17].

Ainda para aplicação no reconhecimento de caracteres cursivos, Silva et al. [18] apresentam uma técnica baseada na projeção do contorno da imagem sobre os lados de um polígono regular posicionado em torno de cada caracter. O polígono circun-dante pode possuir muitos lados (a partir de 3 lados). O vetor de características é formado pelas distâncias perpendiculares tomadas de cada lado do polígono até o contorno da imagem. Esse estudo foi feito a partir de figuras geométricas de qua-drados, octógonos e de círculos. O método apresenta a vantagem de oferecer uma solução implícita para problemas importantes como o da escala, da rotação e da translação.

Trier et al. [19] apresentam um conjunto de características discretas que podem ser obtidas a partir de caracteres que passaram pelo processo de thinning. São elas:

• Número de loops; • Número de juntas T; • Número de juntas X;

• Número de pontos de curvatura; • Proporção entre altura e largura; • Presença de ponto isolado;

• Total de pontos de extremidade, e em cada uma das quatro direções N, S, W e E;

• Número de semicírculos em cada um das quatro direções; • Número de cruzamentos com eixos verticais e horizontais;

As abordagens para extração de características são diversas. A escolha de boas técnicas para extração de características de imagens de documentos é um dos fatores de maior importância para se conseguir altas taxas de reconhecimento. De uma forma geral, a utilização de bons conjuntos de características normalmente resulta na necessidade de construção de classificadores menos complexos.

(32)

2.3.5 Reconhecimento

Dentro do estudo que envolve o reconhecimento de padrões, a comunidade científica tem reservado grande parte dos esforços para o reconhecimento de escrita impressa e manuscrita. Para isso, a utilização de classificadores tem sido uma importante ferramenta.

Um classificador é um mapeamento a partir de um espaço de características para um conjunto discreto de rótulos ou classes. Considerando o alfabeto ocidental por exemplo, o reconhecimento de caracteres consiste em, a partir de características extraídas de um conjunto de caracteres, separá-los em 10 classes de algarismos e 26 classes de letras do alfabeto.

Desta forma, dado um conjunto de padrões de treinamento contendo elementos de todas as classes, deve-se estabelecer fronteiras de decisão dentro do espaço de carac-terísticas que separem os padrões de classes diferentes. As caraccarac-terísticas devem ser apropriadas para uma boa representação dos padrões de entrada.

O processo de classificação deve considerar, portanto, que um dado padrão está em uma das c categorias ω1, ω2, ω3...ωc pertencente ao universo Ω de classes. As

classes contêm características com alguma relação ou peculiaridade em comum. Desta forma, representamos um vetor x por um conjunto de d características onde x = (x1, x2..., xd). Nesse espaço de d dimensões, cada observação x representa uma

medida classificável em Ω.

Os classificadores são então funções que utilizam como entrada os padrões desconhe-cidos e fornecem como saída as classes a que estes padrões provavelmente pertencem. O classificador apresenta-se como a função Y : X → Ω tal que Y (x) = ωi onde ωi é

a i-ésima classe de Ω, sendo xi um padrão desconhecido pertencente ao conjunto de

padrões X em um espaço de características x, e Ω o conjunto com todas as classes existentes. Existem diversas técnicas de classificação, dentre as quais destacamos:

Árvores de Decisão

São estruturas similares a regras if-then. Comuns em problemas de classificação, tomam como entrada uma situação descrita por um conjunto de atributos e retorna uma decisão, que é o valor predito para o valor de entrada, poendo ser discreto ou contínuo.

A saída ou decisão da árvore se dá pela execução de uma série de testes onde seus nós internos correspondem a testes de valores das propriedades, e os ramos deste nó são identificados com os possíveis valores do teste. Cada nó folha da árvore especifica o valor de retorno se a folha for atingida. Desta forma, as árvores de

(33)

decisão trabalham seguindo o paradigma bottom-up onde as informações sobre cada objeto a ser classificado deve poder ser expressa em termos de uma coleção fixa de propriedades ou atributos. Segue exemplo de estrutura de uma árvore de decisão:

Figura 2.7: Estrutura de Árvore de Decisão

Casamento de Modelos (template matching )

Nesta abordagem, o padrão a ser reconhecido é comparado com os modelos arma-zenados, observando todas as variações possíveis em termos de: translação, rotação e mudanças de escalas. A medida de similaridade é frequentemente uma correlação ou uma função de distância.

Desta forma, seja x = (x1, x2..., xd) um vetor em um espaço de d-dimensional e

ω1, ω2, ω3...ωc um conjunto c de classes modelos nesse espaço. Um conjunto de c

funções de decisão d1(x), d2(x)...dc(x) com a propriedade de que se x pertencer a

uma classe ωi então:

di(x) > dj(x) j = 1, 2...c, i 6= j

O casamento de modelos faz parte das abordagens de decisão teórica que se baseiam na utilização de funções de decisão (ou discriminantes). A função dij(x) = di(x) −

dj(x) = 0 identifica a fronteira de decisão entre duas classes. Portanto temos para

(34)

Redes Neurais

De forma semelhante ao nosso cérebro, as Redes Neurais são formadas por elemen-tos processadores, chamados neurônios, que interconectados são capazes de adquirir conhecimento com o passar do tempo. Este conhecimento é obtido através do re-lacionamento dos neurônios uns com os outros, compondo uma rede onde as saídas de uns compõe as entradas de outros (sinapse nervosa).

Figura 2.8: Neurônios biológicos e o processo de sinapse

Nas Redes Neurais Artificiais os neurônios semelhante com um número I de entradas xi e uma saída y. As entradas possuem pesos associados wi i = 1..I. Pode ainda

haver um parâmetro adicional do neurônio w0 chamado de viés (bias) que pode ser visto como o peso associado com uma entrada x0 que é sempre 1.

Figura 2.9: Representação de um Neurônios Artificial

A Figura 2.10 [20] apresenta a representação da organização de uma rede neural multicamadas ou Multilayer Perceptrons (MLP). Elas são compostas tipicamente de uma camada de entrada, uma ou mais camadas ocultas e uma camada de saída. O sinal de entrada se propaga para frente através da rede, camada por camada e cada

(35)

neurônio computa o somatório de suas entradas incluindo o viés (b) formalizando esses fatores através de uma função de transferência ou ativação.

Figura 2.10: Rede Neural MLP com três camadas

Um algoritmo de treinamento bastante utilizado nesse tipo de rede é o backpropaga-tion onde os dados são repetidamente apresentados a rede neural e então comparadas a saída obtida com a saída desejada. O erro calculado é então propagado de volta na rede e utilizado para ajustar os pesos buscando reduzi-lo a cada iteração.

O estudo sobre Redes Neurais é bastante extenso inclui, além das redes MLP, outros tipos de rede como Redes de Kohonen, Redes Hopfield. Para maiores informação consulte Braga et al. [21].

Lógica Nebulosa

A Lógica Nebulosa ou Fuzzy (FL) se baseia no conceito de Conjuntos Fuzzy e seus limites não precisos. Em oposição ao conceito tradicional de conjuntos numéricos em que um número pertence ou não a um determinado conjunto, na lógica fuzzy os números de um conjunto possuem um grau de pertinência a este conjunto, que varia dentro de um intervalo. Esta teoria trouxe uma contribuição importante ao conceito de incerteza.

Para representar os conjuntos fuzzy e o grau de pertinência, a FL usa funções de pertinência. Seguem exemplos de funções de pertinência:

(36)

Figura 2.11: Funções de pertinência: (a) triangular, (b) trapezoidal, (c) gaussiana

Nos gráficos, o eixo X representa os valores no conjunto fuzzy e o eixo Y o grau µ de pertinência dos mesmos. Desta forma, µA(x) = y nos diz que y é o grau de

pertinência de x no conjunto A.

A partir de conjuntos não-nebulosos (crisp2), a criação de seu respectivos conjuntos nebulosos é feita através da determinação do grau de pertinência de cada um dos elementos aos conjuntos. A este processo dá-se o nome de fuzzyficação. O processo de defuzzificação consiste da utilização dos resultados das regras para a criação de conjuntos crisp que contenham informações a respeito da classificação dos elementos. Desta forma, a classificação com lógica nebulosa normalmente é feita através de regras nebulosas e métodos de defuzzificação. As regras nebulosas normalmente são regras de inferência que utilizam delimitadores dos valores de pertinência de cada padrão aos conjuntos.

k – Nearest Neighbors (kNN)

O kNN (k – Nearest Neighbors) é um dos métodos de classificação mais antigos e simples. Apesar disso, tem apresentado bom desempenho em diferentes cenários. A aplicação do algoritmo kNN, ou k-Vizinhos mais próximos, depende da existência de um conjunto de treinamento formado por vetores n-dimensionais. Cada elemento deste conjunto representa um ponto no espaço n-dimensional.

Uma vez definido o conjunto de treinamento, para determinar a classe de um ele-mento não pertencente a este conjunto, o classificador kNN procura k eleele-mentos existentes no conjunto de treinamento que estejam mais próximos deste elemento desconhecido, ou seja, que tenham a menor distância.

Existem vários métodos para o cálculo dessa distância. O mais utilizado é a distancia Euclidiana e este será o método de cálculo que utilizaremos nesse nosso primeiro

2Conjuntos com valores bem delimitados. Elementos pertencem ou não pertencem a um dado

(37)

experimento de classificação. Matematicamente, sendo p e q dois pontos no espaço n-dimensional, a distância euclidiana é dada por:

d(p, q) = v u u t n X i=1 (pi− qi)2

Vale ressaltar ainda que, para evitar a existência de discrepâncias de valores dos diferentes atributos, é importante que os dados estejam normalizados. Desta forma, sendo v um valor do atributo a que aparece na tupla p, para normalizá-lo conside-ramos o valor v0 ∈ [0; 1] calculado como:

v0 = v − mina maxa− mina

Uma vez descobertos quais são os k-vizinhos mais próximos, a classificação se dá verificando qual a classe mais frequente dentre as classes desses k vizinhos. A classe mais frequente encontrada é então atribuída ao elemento desconhecido.

A determinação do valor de k ou seja, do número de vizinhos a ser considerado, é um fator importante para a precisão do algoritmo e é determinado pelo usuário para obter uma melhor classificação.

Conforme podemos observar na Figura 2.12, se o usuário escolher um valor de k muito pequeno, a classificação ficará sensível a pontos de ruído ou características irrelevantes. Se k for muito grande, a vizinhança pode incluir elementos de outras classes. Em ambos os casos, o processo de classificação com o kNN pode ficar prejudicado.

(38)

Em suma, esse algoritmo é bastante utilizado por ser uma técnica flexível e simples

de implementar. Por outro lado, em um grande volume de dados, o algoritmo

kNN pode ser um grande consumidor de recursos computacionais, tornado-se lento por exigir a realização de cálculos de distância para cada elemento do conjunto de treinamento.

(39)

3 Diferenciação entre Manuscritos e

Impressos: Abordagens da

Literatura

3.1 Visão Geral

O Reconhecimento de Padrões por Computador é uma das mais importantes áreas da Inteligencia Artificial e possui, atualmente, diversas aplicações como análise de dados sísmicos, identificações biométricas (voz, iris, digital e outros), previsão de mercados financeiros, previsões meteorológicas e reconhecimento de textos.

Aplicações na área de reconhecimento de textos são particularmente complexas em decorrência do grande número de variáveis envolvidas. De uma forma geral, os docu-mentos podem apresentar diversos componentes não textuais, como linhas, imagens, manchas provocadas pelo tempo, além de uma infinidade de tipos e estilos de fon-tes. Além disso, é frequente a existência de textos impressos e manuscritos em uma mesma imagem de documento e, como as técnicas para reconhecimento dessas duas classes de texto costumam ser distintas, faz-se necessário um procedimento de diferenciação desse dois tipos de texto [15].

A diferenciação entre manuscritos e impressos é necessária principalmente em decor-rência da irregularidade dos textos manuscritos. Na Figura 3.1 podemos observar que a segmentação do texto em palavras, por exemplo, torna-se uma tarefa complexa em textos manuscritos tendo em vista que o método mais óbvio para esta função, a medida e comparação da distância entre os caracteres e as palavras, falharia devido a irregularidade encontrada em manuscritos [16].

(40)

Figura 3.1: Segmentação de palavras em textos impressos (a) e manuscritos (b)

Em (a), a distância entre caracteres (letras de uma mesma palavra) e a distâncias entre palavras em texto impressos são constantes, sendo a segunda maior que a primeira. Dessa forma, as palavras podem ser facilmente separadas por meio da dis-tância horizontal entre os componentes. Entretanto, em (b), não existe regularidade de espaçamento entre os caracteres do texto manuscrito, transformando a tarefa de segmentação num procedimento mais difícil e elaborado. No trecho “That cannot”, por exemplo, o espaçamento entre as duas palavras é menor do que entre letras e e i da palavra "either".

As variações de estilo em manuscritos fazem com que um mesmo caractere possa apresentar formas diferentes de uma pessoa para outra, ou até mesmo para uma mesma pessoa, em momentos diferentes tornando a tarefa de reconhecimento para este tipo de texto muito mais complexa. Os textos manuscritos podem ainda se apresentar de forma isolada ou cursiva. No primeiro caso os caracteres estão dis-postos de forma não conectada, enquanto que no segundo estão disdis-postos de forma completamente irrestrita, ou seja, conectados ou eventualmente desconectados. Na palavra “continue” da Figura 3.1, os caracteres estão quase todos conectados. Uma série de outros problemas existentes em textos manuscritos justificam o uso de técnicas diferentes para o trabalhos de reconhecimento de caracteres. Seguem mais alguns exemplos:

• Variação de tamanho dos caracteres;

• Inclinação na escrita, ruídos na imagem ou borramento; • Influência da escrita no verso do documento;

3.2 Trabalhos Realizados

Como mencionado anteriormente, o Reconhecimento Óptico de Caracteres (OCR) faz uso de metodologias diferentes para lidar com impressão de máquina e texto

Referências

Documentos relacionados

v) por conseguinte, desenvolveu-se uma aproximação semi-paramétrica decompondo o problema de estimação em três partes: (1) a transformação das vazões anuais em cada lo-

Silva e Márquez Romero, no prelo), seleccionei apenas os contextos com datas provenientes de amostras recolhidas no interior de fossos (dado que frequentemente não há garantia

O efetivo pagamento da(s) RECEITA(S) FIXA(S) estará condicionado ao início da operação comercial da(s) USINA(S), devendo os recursos financeiros associados a este

Considerando a importância do assunto, a variabilidade existente nas características físicas e a ausência de dados na literatura especializada referente a

Entre os investimentos no setor de alimentos, o processo de internacionalização dos frigoríficos foi destaque do investimento brasileiro na região em 2007: foram sete aquisições,

Mas ele é ( verbo ser, no Presente do Indicativo ) apenas um gato e não tinha tido ( verbo ter, no Pretérito Mais-Que-Perfeito Simples do Indicativo ) tempo de aprender (

A participação foi observada durante todas as fases do roadmap (Alinhamento, Prova de Conceito, Piloto e Expansão), promovendo a utilização do sistema implementado e a