Aspectos Computacionais do Processamento de Imagens de Documentos Históricos
Texto
(2) ii. Resumo Este trabalho apresenta novos aspectos quanto ao processamento de imagens de documentos históricos. Um novo algoritmo para segmentação de imagens baseado em Entropia é proposto e analisado e comparado com diversos outros métodos, com a finalidade de gerar imagens monocromáticas de alta qualidade para inspeção visual, impressão e para inserção em ferramentas de Reconhecimento Óptico de Caracteres. Com a aplicação desse novo algoritmo, um sistema de síntese de imagens de documentos históricos é proposto, onde a textura do papel é criada automaticamente a partir de informações estatísticas da textura original. À essa textura é adicionada a imagem de textual, também sintetizada, apresentando a imagem final do documento com características perceptualmente similares à imagem original e com diferenças estatisticamente não-significantes..
(3) iii. Abstract This Thesis presents news features on historical documents image processing. A new entropybased segmentation algorithm is proposed and analysed, comparing it with similar techniques, generating high-quality monochromatic images for visual inspection, printing and for better response of Optical Character Recognition tools. With the development of this new algorithm, a system for automatic generation of images of historical documents is proposed, where the paper texture is fully created from statistical information of the original texture. To this texture, the textual image, also automatically generated, is added and the final image is presented with features which are perceptually similar to the original one and with differences statistically not significant..
(4) iv. Sumário Índice de Figuras. v. Índice de Tabelas. vii. Tabela de Símbolos e Siglas. viii. Introdução. 10. 1. 19. Reconhecimento Óptico de Caracteres: Técnicas e Ferramentas 1.1 Um Ambiente para Processamento Automático de Imagens de Documentos 1.2 Algoritmos para Reconhecimento Óptico de Caracteres 1.2.1 Redes Neurais 1.3 Um Estudo Comparativo entre Ferramentas Comerciais de OCR 1.3.1 Descrição dos Experimentos 1.3.2 Transcrição de Documentos Históricos 1.3.3 Análise de Erros 1.4 Conclusão. 2. Segmentação de Documentos 2.1 Algoritmos Clássicos de Segmentação 2.1.1 Algoritmo de Pun 2.1.2 Algoritmo de Kapur-Sahho-Wong 2.1.3 Algoritmo de Johannsen e Bille 2.2 Um Novo Algoritmo para Segmentação Baseado em Entropia 2.2.1 O Novo Algoritmo de Segmentação Aplicado a Imagens Coloridas 2.3 Algoritmos de Segmentação e Reconhecimento Óptico de Caracteres 2.4 Conclusão. 3. Análise de Texturas 3.1 Geração de Texturas 1: Preenchendo e Colorindo 3.1.1 Método Baseado em Assimetria 3.1.2 Método Baseado em Curtose 3.1.3 Algoritmo de Coloração da Textura por Matiz 3.2 Geração de Texturas 2: Geração Automática de Texturas Coloridas 3.2.1 Análise das Texturas Sintéticas 3.3 Conclusão. 4. Geração Automática de Imagens de Documentos Históricos 4.1 Geração por Composição de Imagens 4.2 Geração Completa 4.2.1 Caracterização da Base de Imagens da Fonte 4.2.2 Processo de Geração da Imagem 4.3 Conclusão. Conclusões e Trabalhos Futuros. 19 27 28 33 36 39 39 40. 42 44 46 47 48 50 60 67 67. 69 70 73 74 74 77 80 84. 85 86 88 88 90 93. 95.
(5) v. Índice de Figuras Figura 1. Figura 2. Figura Figura Figura Figura. Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura. Figura Figura. Exemplo de um documento do acervo de Joaquim Nabuco. Sistema de geração por composição de imagens aplicado a documentos manuscritos ou datilografados. 3. Sistema de geração completa da imagem da tinta e do papel aplicado apenas a documentos datilografados. 4. Esquema do processo completo para reconhecimento de caracteres 5. Ruído em imagens monocromáticas 6. Exemplo de filtragem por vizinhança usando máscaras de bits 3x3, apresentando um pixel branco cercado por 8 pretos e um pixel preto cercado por 8 brancos 7. “Sombra” que surge na borda dos caracteres, provocando, em alguns casos, a união de duas ou mais letras. 8. Exemplo de aplicação da operação morfológica de erosão 9. Simulação de uma segmentação de documento 10. Exemplo de Segmentação de uma imagem 11. Exemplos de letras usadas como amostras de documentos históricos 12. Gráfico do Erro Médio Quadrático da rede até sua convergência 13. Deslocamento do Histograma do tom azul com o aumento do brilho de uma imagem. 14. Brilho versus Precisão para o TextBridge e o Corel OCR Trace 15. Brilho versus Precisão para o Omnipage e o Wordlinx 16. Detalhes da degradação na digitalização 17. Exemplo de recorte de cor usando o software Photoshop 18. Algoritmos de segmentação baseados em médias 19. Algoritmo de segmentação de Otsu. 20. Algoritmos de segmentação aplicados à imagem da Figura 17.a 21. Exemplos de documentos pertencentes a cada classe definida 22. Simulação da disposição de duas diferentes classes em um documento e a separação destas classes dada por um parâmetro qualquer como Entropia, por exemplo 23. Projeções de H em duas componentes de Hw e Hb 24. Modificação do recorte nas cores definido para a classe de imagens com. 13 16 17 20 22 22. 22 23 24 26 30 33 35 38 38 38 43 44 45 49 51 52 52.
(6) vi. Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura Figura. Figura Figura Figura Figura Figura. H≤0,25 25. Modificação do recorte nas cores definido para a classe de imagens com 0,25 < H < 0,30 26. Novo algoritmo aplicado à imagem da Figura 17.a 27. Aplicação do novo algoritmo de segmentação e outros algoritmos em cartões postais em tons de cinza 28. Exemplo de documento onde o algoritmo mostrou-se ineficiente 29. Pré-processamento no documento anterior para corrigir segmentação 30. Exemplo de carta com Hw = 0 31. Aplicação do algoritmo em grupos de linhas 32. Exemplo de segmentação de um documento datilografado 33. Aplicação do novo algoritmo a imagens coloridas de documentos Datilografados 34. Segmentação do documento da Figura 1. 35. Aplicação do novo algoritmo a imagens com interferência frente-verso 36. Aplicação do algoritmo a imagens coloridas de cartões postais 37. Exemplo de filtragem eliminando apenas os pixels classificados como Tinta 38. Distribuições com terceiros e quartos momentos significativamente diferentes de uma distribuição Gaussiana. 39. Exemplo de preenchimento usando o algoritmo de Assimetria. 40. Exemplo de preenchimento usando o algoritmo de Curtose 41.Gaussiana modificada com uso da Variância ao invés do Desvio Padrão. 42. Texturas consideradas com ruído em experimento com ANOVA. 43. Amostras de letras u retiradas de diferentes cartas entre 1882 e 1888. 44. Configuração para geração automática de documentos utilizando a imagem da parte referente a tinta adicionada a textura gerada. 45. Exemplos de imagens de caracteres extraídos dos documentos para gerar Fonte 46. Parte da base de caracteres usada na geração automática da imagem Textual 47. Processo de geração da imagem de um documento histórico. Primeira Fase: Criação dos arquivos de dados e do arquivo de texto com o conteúdo da carta. 48.Processo de geração da imagem de um documento histórico. Segunda 49. 50. 51. 52.. 53 53 55 56 57 57 58 59 60 62 63 65 66 69 72 73 74 79 81 85 86 89 90 91. Fase: Geração da imagem a partir dos arquivos de dados e de texto. 91. Geração automática da imagem do documento da Figura 1. Documento usado como entrada de diversos OCR’s. Exemplo de Rotação de um documento. Aplicação da transformada de Radon para determinar o ângulo de rotação de uma imagem.. 92 103 111 112.
(7) vii. Índice de Tabelas Tabela 1. Iteração e respectivo Erro Médio Quadrático para Rede Neural usada no reconhecimento de caracteres Tabela 2. Principais características de algumas ferramentas de OCR Tabela 3. Taxa de acerto média para diferentes resoluções em imagens monocromáticas Tabela 4. Taxa de acerto média para diferentes resoluções de imagens em tons de cinza Tabela 5. Taxa de acerto média para diferentes graus de rotação para uma imagem com 250 dpi Tabela 6. Melhores valores de brilho para maior taxa de acerto no reconhecimento Tabela 7. Taxa de acerto para documentos históricos datilografados Tabela 8. Taxa de acerto do Corel OCR Trace para documentos históricos datilografados filtrados por algoritmos baseados em entropia Tabela 9. Taxa de acerto do OmniPage para documentos históricos datilografados filtrados por algoritmos baseados em entropia Tabela 10. PSNR (em dB) entre a imagens originais e as versões coloridas apresentadas nas Lâminas 14, 15 e 16 Tabela 11. Matizes mais freqüentes em amostras de texturas Tabela 12. Entropia da distribuição das matizes em amostras de texturas Tabela 13. Valor médio da Relação Sinal-Ruído de Pico (PSNR) e do Erro Médio Quadrático (EMQ) para um conjunto de 200 texturas geradas automaticamente. 32 34 36 36 37 38 39 67 67 76 77 78 80.
(8) viii. Tabela de Símbolos e Siglas (Dispostos por ordem de aparição no texto) dpi – dots per inch (pontos por polegada) OCR – Optical Character Recognition (Reconhecimento Óptico de Caracteres) r – Componente Vermelha de uma cor g – Componente Verde de uma cor b – Componente Azul de uma cor C – Tom de Cinza EMQ – Erro Médio Quadrático p(i) – Probabilidade do elemento i t – Valor de Corte H – Entropia Hw – Entropia das cores acima de um determinado ponto Hb - Entropia das cores abaixo de um determinado ponto mw – Constante multiplicativa associada com Hw mb – Constante multiplicativa associada com Hb cor[i] – Cor do Pixel i Hr – H para o tom de Vermelho Hwr - Hw para o tom de Vermelho Hbr - Hb para o tom de Vermelho Hg – H para o tom de Verde Hwg - Hw para o tom de Verde Hbg - Hb para o tom de Verde Hb – H para o tom de Azul Hwb - Hw para o tom de Azul Hbb - Hb para o tom de Azul N – Número de elementos (em uma imagem, número de pixels) x - Média σ - Desvio Padrão M n - Momento Central de Ordem n Sk – Assimetria (Skewness) Kurt – Excesso de Curtose (Kurtosis) max – Cor mais freqüente d - Número de linhas de uma imagem matiz – Valor de Matiz matiz_max – Matiz mais freqüente h_hue – Entropia das matizes paleta[i] – Entrada i da paleta de cores da imagem PSNR – Razão Sinal-Ruído de Pico (Peak Signal-to-Noise Ratio) dB – Unidade Decibel ANOVA – Análise de Variância NS – Diferenças Estatisticamente Não-Significativas S – Diferenças Estatisticamente Significativas GLCM – Matriz de Co-Ocorrência de Tons de Cinza (Grey Level Co-Occurrence Matrix).
(9) ix. Agradecimentos Gostaria de agradecer a todos que tornaram esta Tese possível, em particular: • À Deus por tudo e por todos que pôs no meu caminho, me dando as oportunidades às quais tentei aproveitar o máximo possível. • À Banca que avaliou esta Tese composta pelos professores Alejandro Frery, Ana Lúcia Candeias, Flávio Bortolozzi, Judith Kelner e Valdemar Cardoso, pela disposição em ler atentamente o trabalho por, pelo menos, duas vezes e tecer comentários, sempre buscando o seu crescimento. • A todos os meus amigos pelo apoio durante todo este longo período de doutorado. Não tenho como citar o nome de todos, mas não posso deixar de mencionar os nomes de Hermes e Unilton, pelos três últimos anos de convivência quase diária. • Ao amigo e mestre prof. Dr. Valdemar Cardoso da Rocha Júnior pelo exemplo de profissionalismo como professor e pesquisador. • Ao CNPq pelo apoio financeiro ao projeto. • À minha família: Aos meus pais por todo o esforço de uma vida inteira de dedicação única aos filhos – seremos sempre gratos por tudo; À minha irmã, Cláudia, exemplo de força, dedicação e coragem, fonte de uma sabedoria sem limites Ao meu filho, João Vittor, minha alegria, pelo sorriso de todas as manhãs, dando forças para continuar esse trabalho e sendo ele o responsável pelos meus poucos momentos de descanso e lazer. • Ao meu orientador, prof. Dr. Rafael Dueire Lins. Sem dúvida, já parte de minha família, a quem eu não posso enumerar a quantidade de coisas que tenho para agradecê-lo, desde a insistência em minha vinda ao doutorado, à força em momentos difíceis da vida, crença em minha capacidade, responsável pelo meu preparo para as mais diversas situações dentro da vida acadêmica, etc, etc, etc. Sem dúvida, a melhor expressão para a palavra “Educador”..
(10) 10. Introdução O papel, inventado no Egito por volta de 4.000 a.C., pela sua praticidade, portabilidade e custo, representou uma das maiores revoluções tecnológicas da humanidade. Ele substituiu todas as formas de armazenamento de informações anteriores (entalhamento em pedra ou madeira, impressão em tijolos de argila, gravações em couro de animais, etc.), sendo, ainda hoje, o meio mais usado para armazenamento e difusão de informação. Isto não o torna, porém, o mais eficiente. Além da fragilidade inerente, a rápida ocupação de grandes espaços físicos e a dificuldade na busca por dados específicos são as principais desvantagens dessa forma de armazenamento de informações. Nos dias atuais, o uso dos recursos computacionais apresenta-se como alternativa viável e vantajosa para a solução de tais problemas. A criação de dispositivos digitalizadores (scanners e câmeras digitais) tornou possível a transposição de documentos para computadores na forma de imagens. Dessa forma, é possível o armazenamento de imagens de documentos, visando uma proteção mais eficiente ao desgaste provocado pelo tempo. Armazenados em dispositivos de memória secundária, sejam ópticos, como DVD’s ou CD-ROM’s, ou magnéticos como discos rígidos, fitas, discos Zip, Jaz drives, etc., é inteiramente viável a cópia de acervos completos de documentos para outro dispositivo de armazenamento sem nenhuma perda de dados, posterior à digitalização. Talvez o ponto crítico dessa tecnologia esteja na grande quantidade de espaço necessário para armazenar as imagens. Por exemplo, uma página em papel A4 digitalizada, utilizando uma resolução para digitalização de 200 dpi1 e 256 tons de cinza, gera uma imagem de cerca de 1.700x2.400 pixels que ocupa 4.113 Kbytes, se armazenada no formato padrão do sistema Windows, o BMP. Isso torna a prática extremamente onerosa. Se a imagem for relativa a um texto, chamada algumas vezes de imagem textual, a informação contida nela pode ser armazenada em um formato de texto ocupando menos de 100 Kbytes. A transposição de imagens para o formato de texto surge como uma solução a este problema. Uma transposição não automática é inaceitável devido aos custos envolvidos, a baixa velocidade e a baixa confiabilidade do processo. Um sistema automático deve reconhecer os caracteres presentes no documento, diferenciando-os de imagens ou outros dados que possam estar presentes, e transpô-los para caracteres ASCII (American Standard Code for Information Interchange – padrão computacional de caracteres). Este processo é chamado de Reconhecimento Óptico de Caracteres (OCR - Optical Character Recognition). O espaço ocupado por um arquivo de texto é centenas de vezes menor que o ocupado por uma imagem, além de possibilitar a execução de mecanismos de busca por palavras-chave. As dificuldades estão, basicamente, em dois pontos: a escolha do melhor método para realizar a transposição e os melhores ajustes de parâmetros para digitalização já que ajustes inadequados de resolução, brilho, contraste, número de cores, etc., podem provocar uma atuação ineficiente dos algoritmos de reconhecimento e podem requerer uma nova digitalização ou um processamento específico da imagem. O objetivo do Reconhecimento Óptico de Caracteres é o mesmo tanto para documentos manuscritos ou datilografados. No entanto, devido à grande quantidade de características distintas inerentes à escrita de cada pessoa, o reconhecimento de textos manuscritos ainda é um ponto em estudo. Ainda não foi definido um algoritmo eficiente para um perfeito sistema para reconhecimento de 1. dots per inch – pontos por polegada: medida da densidade de resolução de imagens em computadores.
(11) 11 caracteres manuscritos independente do usuário. Para documentos datilografados, dependendo da qualidade do papel e da tinta, o problema já está praticamente resolvido com altas taxas de acerto [50]. Além do uso de OCR’s para diminuição do espaço de armazenamento, a criação de livros digitais surge hoje como uma área em grande expansão. Embora o ser humano esteja mais acostumado com o uso de papel e ainda o considere o melhor método para leitura [60], os livros digitais têm evoluído bastante em termos de interface ao longo dos anos. Novos livros podem ser gerados diretamente no computador, mas a transposição para o universo digital da literatura já existente necessita do uso de ferramentas eficientes para reconhecimento automático de caracteres. Nosso objetivo neste trabalho é o desenvolvimento de técnicas que possam ser utilizadas na criação de um banco de dados de imagens de documentos históricos. Este tipo de acervo, de extrema valia cultural e social, possui uma grande diversidade de características. Mesmo assim, estudos em imagens de documentos históricos ainda são escassos tornando ainda mais relevantes as informações aqui dispostas. É apresentada, ao longo desta tese, uma descrição detalhada de uma série de fatores fundamentais no estudo de tais imagens. Esta tese está inserida no Projeto Nabuco [38][101] que foi desenvolvido visando a atender às necessidades da Fundação Joaquim Nabuco em preservar documentos históricos e tornar mais fácil o acesso a esses. A Fundação Joaquim Nabuco (FUNDAJ), um instituto de pesquisa social, situada em Recife, Pernambuco, possui rico acervo, com centenas de milhares de documentos pertencentes a figuras de destaque da história nacional, destacando dentre elas, seu patrono Joaquim Nabuco. Joaquim Nabuco (1849-1910), escritor, estadista e diplomata, teve um papel fundamental na campanha de libertação dos escravos no Brasil. Dentre os documentos pertencentes a seu acervo existem diversas cartas (manuscritas e datilografadas), cartões postais, etc. Particular destaque merece seu acervo de cartas com cerca de 6.500 documentos, perfazendo um total de aproximadamente 30.000 páginas. Esse projeto visa ao desenvolvimento de um ambiente, fornecendo um conjunto de ferramentas para executar o processo de aquisição, processamento, armazenamento e gerenciamento de imagens de documentos históricos, tendo sido o acervo de documentos de Joaquim Nabuco priorizado face sua importância histórica, grande demanda de consulta e também devido a degradação sofrida pelo papel pela alta alcalinidade empregada no processo químico de sua formação no final do século XIX e início do século XX. O ambiente computacional Nabuco deve ser capaz de processar um grande número de documentos, sendo operado por pessoas não-especializadas em informática, trabalhando em dois níveis: • O primeiro objetivo consiste em preservar o valor iconográfico do documento, substituindo de forma mais vantajosa as técnicas de fotografias e microfilmagens amplamente utilizadas hoje em dia para preservação desse tipo de documento. Para isso, imagens coloridas de alta definição são geradas. • O segundo objetivo consiste em tornar as informações desses documentos facilmente acessíveis a pesquisadores. Nesse caso, imagens em preto e branco de boa definição são geradas [14][15]. Alcançar o primeiro objetivo não é difícil. Por outro lado, obter boa qualidade em imagens preto e branco não é uma tarefa trivial. Em alguns documentos a tinta está esmaecida; em outros casos a tinta está transpassando de uma face para outra do papel, o que se torna uma grande dificuldade quando o documento está escrito dos dois lados. Neste caso, o algoritmo padrão de conversão de imagens coloridas para imagens preto e branco através de limiarização com um valor fixo [18], gera imagens de qualidade inaceitável, como mostraremos adiante. Para prover o acesso fácil às informações, as imagens devem ser comprimidas e armazenadas em um formato conveniente. Esses arquivos de imagens serão parte de um banco de dados multimídia, também desenvolvido no projeto [101]..
(12) 12 O nível de compressão da imagem sem degradação da sua qualidade é também um dos itens relevantes dessa pesquisa. Para tanto, novos algoritmos foram desenvolvidos [43][51][52], buscando aumentar a taxa de compressão das imagens através de características inerentes às próprias imagens de documentos. A aquisição das imagens das cartas consiste de três fases básicas que são : • Digitalização das imagens através de scanners • Filtragem da imagem digitalizada • Compressão dos documentos. Logo após essas fases, as imagens estarão prontas e disponíveis para o sistema de pesquisa e consulta. No ambiente Nabuco, o processo de digitalização das cartas é feito com a utilização de um scanner de mesa. Scanner é um dispositivo que efetua uma varredura mecânica com uma linha de sensores sobre a imagem a ser digitalizada. A digitalização forma uma codificação que pode ser gravada em arquivos. No início do Projeto Nabuco, foi utilizado um scanner de mesa EPSON ES-300C. Esse modelo tinha as seguintes características: Scanner Resolução Óptica Resolução de Cor Máxima Área de Leitura Epson ES-300C 300 dpi 24 bits/pixel A4 ou Carta Posteriormente, utilizou-se outro scanner de mesa HP modelo ScanJet 4c com as seguintes características: Scanner Resolução Óptica Resolução de Cor Máxima Área de Leitura HP Scanjet 4c 600 dpi 24 bits/pixel 8.5" x 14" (Legal) Experimentos efetuados conjuntamente com os especialistas em documentos históricos da Fundação Joaquim Nabuco definiram um bom ponto de equilíbrio entre resolução de digitalização, tempo de digitalização, espaço para armazenamento e tempo de transmissão de documentos via rede. Para tanto, documentos representando os diversos tipos de papel, escrita, degradação, etc. existentes no acervo foram digitalizados com diferentes resoluções e analisados pelos especialistas quanto à visualização em tela de vídeo e re-impressão em impressoras jato de tinta coloridas. O valor de resolução de 200 dpi apresentou resultados satisfatórios, observando também o espaço necessário para armazenamento de tais imagens. Dessa forma, os documentos do acervo foram digitalizados em 16 milhões de cores (formato computacional chamado de true colour). Tais experimentos também apontaram para a conveniência e adequação do formato de armazenamento JPEG [72] com uma taxa de perda de cerca de 1%. Nesse formato, as imagens serão armazenadas em CD-Rom’s com finalidades de preservação. Observamos que a luz proveniente do scanner para fins de digitalização não apresentou níveis representativos de degradação nos documentos, segundo os especialistas da FUNDAJ. As ferramentas de filtragem de imagens existentes atualmente nos softwares comerciais (como PhotoShop, PaintShop Pro, PhotoImpact, etc) para processamento de imagens são lentas para o tamanho das imagens do Projeto Nabuco, requerem usuários especializados para aquisição e filtragem da imagem e não são completamente adequadas para nossa aplicação. Por esses motivos, surgiu a necessidade de se desenvolver um algoritmo próprio dentro do ambiente. Dois algoritmos distintos são usados no ambiente Nabuco para a filtragem dos documentos, de acordo com a natureza do documento. São considerados os seguintes aspectos: • O documento não apresenta interferência do verso na parte da frente. Este caso, já implementado anteriormente [14], é o mais simples. • Há interferência da tinta do verso no anverso face à translucidez do papel. Neste caso, algumas técnicas foram desenvolvidas e serão aqui apresentadas..
(13) 13 Um exemplo de uma carta pertencente ao acervo da Fundação Joaquim Nabuco pode ser visto na Figura 1 a seguir.. Figura 1. Exemplo de um documento do acervo de Joaquim Nabuco. Mais exemplos de documentos pertencentes ao acervo podem ser vistos nas lâminas de 1 a 5, no final desta tese. Esses documentos foram impressos em uma impressora/copiadora Xerox DocuColor 40 com resolução de 600 dpi em cores e em tons de cinza. Como o Projeto Nabuco é anterior a esta tese, é mister aclarar qual a contribuição desta dissertação. A idéia original do projeto global é do prof. Dr. Rafael Lins e foi descrita no artigo [38]. Três dissertações de mestrado foram desenvolvidas dentro do Projeto Nabuco, merecendo serem destacadas as suas contribuições:.
(14) 14 • Luciano Galdino Rosa Neto [71] tratou aspectos da base de dados do Projeto Nabuco, modificando o software de bibliotecas Micro-Isis para incluir imagens e também desenvolveu módulos para o Gais, possibilitando o acesso aos documentos via Internet. • O autor desta tese, durante sua dissertação de Mestrado [43], cuidou da compressão das imagens monocromáticas do acervo, criando o algoritmo chamado de Run-Length Modificado. • Leopoldo Rodrigues França Neto, na sua dissertação de Mestrado [24], definiu os principais aspectos do Ambiente Nabuco, desenvolvendo um sistema semi-automático para binarização das imagens do acervo e apresentando uma variação no algoritmo de Run-Length Modificado. Ficam assim caracterizadas as contribuições mais significativas ao Projeto Nabuco não constantes da presente tese. Desta maneira, toda e qualquer referência ao Projeto Nabuco que não seja devidamente atribuída a outrem ou ao próprio autor durante a dissertação de Mestrado, é original e faz parte exclusiva da presente tese, sendo o mesmo, sob a orientação do seu supervisor, os únicos responsáveis pelas idéias, algoritmos e programas aqui apresentados. Outros exemplos de sistemas para disponibilização de versões digitais de acervos de documentos históricos podem ser encontrados. Dentre esses, destacamos: • Projeto Gutenberg: Desenvolvido pela Universidade de Keio, Tóquio, dentro do Projeto HUMI (Humanities Media Interface Project). Apresenta a versão digital da Bíblia impressa originalmente por Gutenberg, composta por dois volumes, com mais de 1.300 páginas. As páginas foram digitalizadas com uma resolução de fac-símile e applets Java são utilizados para apresentar as imagens na janela do Navegador. O site possui ainda outras obras digitalizadas. Maiores informações em: http://www.humi.keio.ac.jp. • Livro de Emblemas: Projeto para criação de uma acervo digital de emblemas franceses, desenvolvido pela Universidade de Glasgow. Maiores informações podem ser encontradas em: http://www.emblems.arts.gla.ac.uk. • Projeto ARTFL (American and French Research onthe Treasure of the French Language): Desenvolvido pela Universidade de Chicago, EUA. Possui diversas coleções de textos e enciclopédias francesas do século XVI. Algumas obras têm mais de 17 volumes, totalizando mais de 18.000 páginas. Maiores informações: http://www.lib.uchicago.edu/efts/ATFL. • Koninklijke Bibliotheek: Uma seleção de objetos, manuscritos, livros, gravuras e pinturas da Idade Média até o século XX publicados na forma de livro e apresentados de forma digital. Todo o material apresentado refere-se aos Países Baixos. Maiores informações sobre o projeto em: http://www.konbib.nl/index-en.html. • The Digital Scriptorium: O projeto apresenta o desenvolvimento de uma base de dados digital de manuscritos medievais e da renascença, sendo desenvolvido por diversas bibliotecas filiadas às universidades de Berkeley e Columbia nos Estados Unidos da América. O acervo possui mais de 8.500 imagens coloridas apresentadas em diversos formatos para visualização em tela, inclusive, formatos em alta resolução com 300 dpi de resolução. Muitas imagens, porém, ainda não estão disponíveis no site: http://sunsite.berkeley.edu/Scriptorium. • Cervantes Digital Library: Site dedicado as obras de Miguel de Cervantes, contendo sua bibliografia e uma coleção de arquivos digitais de algumas de suas obras, notadamente, Dom Quixote, a qual aparece tanto como imagens digitalizadas quanto como texto em inglês e espanhol. O projeto é fruto da colaboração de diversas universidades e do Centre de Estudios Cervantinos na Espanha. O acervo digital possui imagens armazenadas em 2 cores no formato GIF com baixa resolução. Ao todo, 6 obras são apresentadas das quais 5 já estão completas. Site: http://www.csdl.tamu.edu/cervantes/english/index.html. • Projeto DEBORA (Digital AccEss to BOoks of the RenAissance). O principal objetivo desse projeto Europeu é o desenvolvimento de um conjunto de ferramentas para acesso remoto a livros do século XVI digitalizados, sem a necessidade de contato com as bibliotecas onde os livros originais estão localizados. A parte técnica do projeto vem sendo desenvolvida em.
(15) 15 conjunto por universidades da França, Grã-Bretanha e Portugal. Diversas bibliotecas na Itália, Portugal e França associam-se às universidades fornecendo parte do material digitalizado. Mais informações em : http://debora.enssib.fr. Nesta tese, apresentamos as bases de um novo sistema de compressão de imagens de documentos baseado na sua transcrição. Várias etapas são definidas nesse sistema. O seu primeiro passo depende fortemente da resposta de ferramentas de OCR. Assim, concentramo-nos, de início, em buscar uma melhora na resposta de tais ferramentas quando aplicadas a imagens de documentos históricos datilografados. Esta melhora foi alcançada com o desenvolvimento de um novo algoritmo para segmentação de imagens coloridas e em tons de cinza. Com esse algoritmo, conseguimos criar uma imagem eliminando os pixels denotados aqui como papel, restando apenas o que denotamos por tinta. Este pré-processamento conseguiu aumentar significativamente a taxa de acerto dos OCR’s comerciais em cerca de 10%. É importante salientar alguns aspectos fundamentais da restrição a textos datilografados. Por um lado, a utilização de material datilografado facilita o estudo, pois, em geral, os sistemas de reconhecimento possuem uma taxa de acerto maior nesses casos. Deve-se considerar também que as cartas são do final do século passado, quando, devido às características tecnológicas e sociais da época, os escritores possuíam suas próprias máquinas de datilografar e delas se utilizavam para escrever mesmo quando em viagem. Dessa maneira, há uma uniformidade tipográfica diferentemente de outros períodos históricos, tal como na década de 1970, onde a tecnologia permitia a troca do conjunto de esferas ou margaridas, possibilitando o uso de vários conjuntos de fontes, inclusive, em um mesmo documento. Em contrapartida à facilidade da uniformidade tipográfica, surgem como fatores de degradação a sujeira dos tipos ocasionada pelo uso e as cópias carbono (alguns documentos não são originais, mas 2a ou 3a via em carbono). Além disso, o fato de estarmos trabalhando com documentos antigos nos traz uma série de fatores bastante particulares inerentes ao acervo, dificultando bastante o trabalho. O próprio papel usado surge como um fator primordial já que seu envelhecimento, ocasionando escurecimento, fungos, manchas, dobras, amassados, etc., influencia bastante o desempenho dos algoritmos de reconhecimento das ferramentas de OCR. A restrição a documentos datilografados aplica-se apenas às etapas onde ferramentas de OCR são usadas. Os processos de filtragem são utilizados em quaisquer imagens do acervo, incluindo documentos manuscritos e cartões postais. Uma melhoria relevante na taxa de acerto das ferramentas de OCR permite-nos a criação de um sistema para geração de imagens, cuja maior justificativa está na alta taxa de compressão associada. Para acessar pela Internet um documento datilografado, um pesquisador ou qualquer outra pessoa não necessitará visualizar a imagem original do documento (em geral, com centenas de Kbytes); bastará copiar: o código executável do sistema de geração uma única vez, arquivos texto com cerca de 2 Kb, contendo o conteúdo da carta, e mais algumas informações armazenadas em arquivos com menos que 1 Kb que serão usadas para gerar uma imagem similar à original. A base para todo esse sistema estará sendo aqui descrita. Foi observado em [88] que o acesso pela Internet a documentos convertidos para imagem através da digitalização é bastante oneroso e traz uma série de problemas. O sistema de geração funciona em dois níveis. O primeiro, mais rápido e gerando resultados mais próximos do original, é feito através de composição de imagens, utilizando a imagem textual gerada pela segmentação da imagem do documento original e uma textura sintética do papel da carta, conforme pode ser visto de forma resumida na Figura 2. Em um segundo nível, o sistema gera sinteticamente não só a textura do papel, mas também a imagem textual, usando uma base de imagens de caracteres extraída dos próprios documentos. Nesse caso, o sistema utiliza uma ferramenta de OCR como apoio para geração do arquivo de texto referente ao conteúdo da carta e, por esse motivo, foi aplicado apenas a documentos datilografados..
(16) 16. Figura 2. Sistema de geração por composição de imagens aplicado a documentos manuscritos ou datilografados. A Figura 3 apresenta esquematicamente esse segundo aspecto do sistema. O arquivo de texto gerado pelo OCR é convertido para imagem à qual é colorida, utilizando informações da imagem textual original. Em seguida, a textura é sintetizada e adicionada ao fundo da imagem textual, formando o papel do documento. Maiores detalhes sobre o processo de síntese proposto são vistos no Capítulo 4 desta tese. Assim, o trabalho apresentado nesta tese envolve diversos fatores de processamento de imagens desde a criação de algoritmos para filtragem, geração automática de texturas e de documentos, até a compressão final de documentos históricos datilografados. Enquanto não existe uma definição formal para uma textura, este conceito tem particular importância em computação gráfica [85] onde é usado para dar mais naturalidade a modelos artificiais. Podemos entender por textura como um padrão que se repete, uniformemente ou não, sobre uma superfície. No nosso caso, a textura está associada às características físicas do papel do documento. A seguir, tem-se a descrição de cada capítulo que compõe esta tese, além do presente capítulo de Introdução. O primeiro capítulo explica como funciona, basicamente, um ambiente para processamento de documentos, algumas das principais técnicas de OCR e apresenta os tipos de problemas que podem ser encontrados em um documento digitalizado. As dificuldades inerentes ao processo de digitalização são transferidas imediatamente para a qualidade da imagem gerada. Algumas ferramentas comerciais de OCR atualmente disponíveis são analisadas e testadas quanto ao percentual de acerto face à variação de diversos parâmetros de entrada (ajuste do scanner, tonalidade do papel, textura, sensibilidade à rotação do documento, etc.), simulando diferentes graus de conhecimento de um usuário padrão. Um OCR primitivo baseado em redes neurais é desenvolvido e apresentado. Tal OCR será base para um sistema de transcrição múltipla de documentos o qual utilizará diversas ferramentas de OCR, buscando a melhor resposta entre elas em cada parte transcrita do texto. No segundo capítulo, serão analisados alguns algoritmos de segmentação de imagens existentes. O objetivo é gerar uma imagem onde as componentes do papel possam ser eliminadas, deixando apenas a tinta. Para tanto, diversos algoritmos encontrados na literatura são testados e analisados seus comportamentos com as imagens do acervo Nabuco. Destaca-se um novo algoritmo de segmentação baseado em entropia desenvolvido no projeto, comparando-o com.
(17) 17 outros similares. Em especial, será observado o problema da interferência frente-verso dos documentos (no caso de documentos escritos nos dois lados).. a). b) Figura 3. Representação esquemática de entrada e saída do algoritmo desenvolvido para documentos datilografados. a) Entrada: Imagem textual e textura e b) Saída: Geração da imagem sintética O terceiro capítulo apresenta uma análise das texturas do papel dos documentos digitalizados. Através de diversos parâmetros inerentes às texturas, é apresentado um algoritmo para criação automática de texturas coloridas dos documentos. Essa textura artificial sintetizada é semelhante à original sob diversos aspectos, principalmente, do ponto de vista de percepção do olho humano. À imagem gerada da textura é acrescida a componente texto. No caso de documentos manuscritos, a imagem de texto gerada pelo algoritmo de segmentação é acrescida à textura. Documentos datilografados podem ser completamente sintetizados, utilizando um arquivo texto com informações contidas no documento original. O texto transcrito pelas ferramentas comerciais de OCR serve como entrada para uma ferramenta primitiva que é responsável pela segmentação do texto caractere-a-caractere de tal forma a estabelecer um conjunto de fontes tipográficas. À imagem textual gerada é adicionada a textura artificial do papel. Esse esquema de compressão é descrito no capítulo quatro..
(18) 18 Por fim, nas conclusões, é feita uma análise das contribuições dadas por este trabalho e linhas para desenvolvimentos futuros..
(19) 19. Capítulo 1 Reconhecimento Óptico de Caracteres: Técnicas e Ferramentas Antes de serem iniciados os procedimentos de reconhecimento de caracteres, alguns fatores devem ser levados em consideração. A maioria dos algoritmos de reconhecimento perde grande quantidade de informação se alguma degradação for imposta à imagem. Existem problemas inerentes ao próprio documento a ser digitalizado e há ruídos adicionados no próprio processo de digitalização. Por exemplo, um certo grau de rotação adicionado ao documento pode gerar uma imagem de baixa qualidade para mecanismos de reconhecimento de caracteres. Dessa forma, é preciso pré-processar a imagem antes de prosseguir com a sua transcrição para texto. Os principais requisitos de um sistema de OCR foram descritos em [11] por Cushman-Ojha-Daniels e em [12] por Dengel-Bleisenger-Hoch-Fein-Hönes. Uma ferramenta primitiva de OCR para documentos datilografados foi desenvolvida no âmbito desta tese com o propósito de gerar uma ferramenta ajustada especificamente ao Projeto Nabuco. No entanto, as ferramentas comerciais atualmente disponíveis estão desenvolvidas com um tão alto grau de complexidade que seria extremamente difícil, durante o período desta tese, projetar e implementar um sistema similar aos existentes. Por esse motivo, resolvemos pesquisar, dentre os mais usados softwares da área, qual o de melhor resultado. Nesse sentido, os softwares foram testados em imagens de documentos históricos manuscritos e datilografados. Para textos manuscritos, porém, as taxas de acerto foram insignificantes (próximas a 0 % em todos os casos). Em documentos datilografados, a taxa de acerto foi de 30% em alguns casos, como será analisado posteriormente. A seguir, analisaremos, como é organizado um ambiente para processamento de documentos e alguns algoritmos para reconhecimento óptico de caracteres, destacando o uso de redes neurais. Concluiremos o capítulo com um estudo comparativo entre as principais ferramentas de OCR disponíveis comercialmente no mercado.. 1.1 Um Ambiente para Processamento Automático de Imagens de Documentos O objetivo da análise de imagens de documentos é identificar os componentes da imagem e extrair informação como um ser humano faria [55]. Uma visão geral de sistemas de processamento de documentos pode ser vista em [6] (início do desenvolvimento do antigo OCR.
(20) 20 Wordscan da Calera Inc.), [23] (onde sugere-se o uso de restrições sintáticas em um sistema para reconhecimento de palavras, usando um modelo de Markov e uma variação no algoritmo de Viterbi), [54] (incluindo uma revisão histórica sobre o tema), [73] e [79]. Basicamente, dois tipos de componentes podem ser encontrados em documentos: texto e figuras. É importante proceder com essa identificação para que a ferramenta de OCR não perca tempo tentando processar áreas do documento compostas apenas por elementos gráficos (figuras, fotos, diagramas, etc.). Quatro passos devem ser seguidos na imagem antes do reconhecimento final dos caracteres da imagem de um documento: 1. Captura dos dados: feita no papel do documento através de um digitalizador (tal como um scanner). 2. Processamento da imagem: análise de rotação, redução de ruídos inerentes ao papel ou inseridos pelo processo de digitalização, detecção de junção de caracteres, segmentação da imagem, etc. 3. Análise de características: após o processamento da imagem, características intermediárias devem ser encontradas para facilitar o posterior processo de reconhecimento como, por exemplo, o tamanho das fontes do documento e análise de diagramação. 4. Análise e reconhecimento de texto e gráficos: nesta fase, o documento final é gerado com grupos de pixels transcritos para títulos, sub-títulos, corpo de texto, etc. Os gráficos podem ser inseridos no documento final como imagem, dependendo do formato de saída suportar tais elementos, como XML (eXtensible Markup Language) [68], por exemplo. Este processo pode ser visualizado de forma resumida na Figura 4 abaixo.. Figura 4. Esquema do processo completo para reconhecimento de caracteres O primeiro e principal passo em qualquer sistema de processamento de imagens de documentos é a aquisição das imagens. Esse ainda é o mais delicado e dependente do usuário. Além disso, os efeitos do processo de digitalização serão sentidos em todas as etapas seguintes, podendo, inclusive, gerar uma melhor ou pior resposta de uma ferramenta de OCR [19]. Diversos problemas de digitalização podem afetar o formato de um caractere, podendo, inclusive, perder pixels, deixando “buracos” o que pode dificultar o reconhecimento. Os tipos de possíveis problemas refletidos nos caracteres e provocados por problemas de digitalização (como rotação, variações na largura e altura, borramento, etc.) são modelados por Baird em [3] e utilizados para definir um sistema de geração aleatória de caracteres com tais erros. Realizada no digitalizador (geralmente, um scanner), a determinação da resolução utilizada na digitalização é essencial para um perfeito processo de reconhecimento. Embora não haja regra definida quanto ao melhor valor de resolução para um documento, 150 a 250 dpi foi considerada, pelos técnicos em documentação histórica da Fundação Joaquim Nabuco, uma taxa adequada por gerar imagens de boa qualidade para visualização em tela de terminal de vídeo ou para re-impressão em dimensões iguais às do documento original. Um aumento na resolução implica em um aumento do número de pixels na imagem e, conseqüentemente, um aumento na quantidade de informação necessária para processar e armazenar. Qualquer alteração necessária.
(21) 21 na resolução da imagem deve ser feita através de uma nova digitalização. Dessa forma, é essencial a escolha de um valor adequado, levando em consideração o tamanho do arquivo resultante, a maneira como tais imagens serão visualizadas, a velocidade de digitalização, a velocidade de transmissão via rede, o custo dos dispositivos de digitalização, transmissão, armazenamento, visualização, etc. Levando todos esses fatores em consideração, a equipe do Projeto Nabuco optou por digitalizar o acervo em 200 dpi, inclusive porque tal resolução é compatível com o padrão adotado para a transmissão/impressão de documentos via dispositivos de fac-símile. Como não seria possível a digitalização e o armazenamento de imagens em diversas resoluções diferentes, a resolução definida para o armazenamento (200 dpi) também será usada para as aplicações em Reconhecimento de Caracteres. De fato, em experimentos posteriores, apresentados na seção 1.3 desta tese, foi comprovada que uma resolução de 200 a 250 dpi apresenta as melhores taxas de acerto de ferramentas de OCR. Observações também devem ser feitas quanto a dimensão da paleta de cores (número máximo de cores) escolhida para digitalização. Mesmo para imagens com poucas cores (como documentos, onde, geralmente, as cores predominantes são as da tinta e do papel), sugere-se uma digitalização em true colour ou em tons de cinza, permitindo a captação de nuances de tonalidade nos documentos. Isso garante uma melhor qualidade na imagem final a ser processada. Após a digitalização, algoritmos de processamento de imagens devem ser aplicados antes do reconhecimento de caracteres, procurando corrigir defeitos na imagem ou extrair dados não só inúteis para o reconhecimento, mas que podem também dificultar o processo. As fases iniciais do processamento devem lidar com a eliminação de ruídos em uma imagem e a identificação de possíveis erros oriundos de rotação durante o processo de digitalização. Caso o documento tenha sido mal-posicionado sobre a mesa de digitalização, a imagem gerada poderá sofrer uma inclinação a qual pode vir a gerar falhas na etapa final de reconhecimento. A rotação da imagem de um documento pode ser tratada principalmente pelo uso da Transformada de Hough [18][66]. Outros métodos, porém, também apresentam bons resultados como pode ser visto em [4], onde um sistema de detecção de grau de rotação é proposto baseado no cálculo do máximo de uma função de energia de um conjunto de projeções de caracteres. O Apêndice B desta tese apresenta as principais características da Transformada de Hough e mostra uma simulação de sua aplicação feita no software MatLab [97], usando a Transformada de Radon [25][40][70]. Corrigidos eventuais problemas de rotação, o sistema deve tentar eliminar possíveis ruídos na imagem. Definimos como ruído a presença de pixels na imagem que não correspondem à informação original (obtidos algumas vezes, através da digitalização) ou que não contém informação relevante ao processo em estudo. No caso da digitalização a partir de papéis, o ruído pode vir do próprio papel (tais como, rugosidade devido a dobras ou amassados, fungos, manchas de umidade, manchas de manuseio, respingos da tinta utilizada na escrita ou na impressão, etc.), não sendo acrescentado pelo scanner. Outros tipos de ruídos, no entanto, são devidos ao próprio processo de digitalização da imagem real, como a junção de caracteres. A Figura 5 mostra um exemplo de uma imagem sob a presença de ruídos. Imagens digitalizadas a partir de documentos escritos estão suscetíveis à presença de ruídos na forma de pixels indesejados. Em imagens monocromáticas, por exemplo, esses ruídos podem ser identificados como pixels pretos em áreas onde deveriam haver apenas pixels brancos e vice-versa. No caso de imagens monocromáticas, esse problema pode ser parcialmente resolvido através do uso de uma filtragem por vizinhança [15][57]. Através do uso de uma máscara de bits, diversas regras podem ser aplicadas, visando a eliminação do ruído. Por exemplo, com uma máscara 3x3, um pixel preto cercado por oito pixels brancos pode ser considerado um ruído e transformado em um pixel branco. A mesma inversão pode ser realizada em um pixel branco cercado por oito pixels pretos. Um exemplo de tais máscaras pode ser visto na Figura 6..
(22) 22. a). b) Figura 5. Ruído em imagens monocromáticas a) Exemplo de ruído e b) aproximação da imagem. Figura 6. Exemplo de filtragem por vizinhança usando máscaras 3x3, apresentando um pixel branco cercado por 8 pretos e um pixel preto cercado por 8 brancos. A presença de ruídos, no entanto, torna-se uma questão mais complexa quando tratamos imagens com mais cores, como imagens com 256 tons de cinza (padrão com 256 cores, variando as tonalidades do preto absoluto ao branco), por exemplo. O aumento no número de cores acarreta um aumento na quantidade de informações em uma imagem. Isso torna mais difícil a determinação do que é letra, o que é papel e o que é ruído. É importante saber usar essa quantidade maior de informação de forma a trazer melhores resultados. Uma situação grave e difícil de ser solucionada acontece quando dois caracteres aparecem próximos em um documento e, ao serem digitalizados, são unidos na imagem. Esta união, decorrente do processo de digitalização, pode ser vista como uma “sombra” ao redor do caractere. A Figura 7 apresenta uma imagem digitalizada e, em maior escala, a presença da “sombra” como uma borda que cerca toda a letra nos pontos onde há a fronteira entre a letra e o papel (cor de frente e cor de fundo na imagem). A imagem apresentada foi digitalizada com 256 tons de cinza e uma resolução de 250 dpi.. a) b) Figura 7. “Sombra” que surge na borda dos caracteres, provocando, em alguns casos, a união de duas ou mais letras. a) Exemplo da “sombra” e b) aproximação da imagem na área de junção das letras..
(23) 23 Nessa mesma figura, podemos observar a junção da letra t com a letra h na parte superior das letras. Nesse caso, a imagem já apresentava uma grande proximidade entre as duas letras e a digitalização as aproximou ainda mais. Embora o olho humano consiga distinguir sintaticamente no documento original os caracteres mesmo com uma tênue fronteira entre eles e o papel, o mesmo ainda não é possível para o computador, algumas vezes. O ser humano também faz uso da semântica do documento, possibilitando a segmentação correta, mesmo se houvesse a sobreposição parcial (concatenação direta) das duas letras. A máquina, restrita a padrões sintáticos, não vislumbra tal horizonte. Diversos algoritmos usados para reconhecimento de caracteres necessitam de uma separação perfeita dos símbolos. Dentre eles, citamos o casamento de padrões e os algoritmos estatísticos. Várias ferramentas podem provocar uma separação nas letras, incluindo processos de Morfologia Matemática [64] entre outros [37]. Uma operação morfológica de erosão [64] pode ser aplicada a imagem a fim de aumentar a separação entre os caracteres. A Morfologia Matemática é uma forma de descrever e analisar a forma de um objeto digital, considerando que uma imagem consiste de um conjunto de elementos (pixels) que se unem em grupos em uma estrutura bi-dimensional (forma). Certas operações matemáticas em conjuntos podem ser usadas para intensificar aspectos específicos das imagens. Uma das operações mais elementares da Morfologia é a erosão. Para conjuntos A e B em Z², a erosão de A por B, denotada por AΘB, é definida como:. AΘB = {x | ( B ) x ⊆ A} Ou seja, a erosão de A por B é o conjunto de todos os pontos x tal que B, transladado por x, está contido em A. Em imagens binarizadas de documentos, a operação pode causar um estreitamento nos caracteres, provocando o afastamento de caracteres conectados pelo processo de digitalização como apresentado na Figura 7 anterior. Um exemplo do resultado de tal operação pode ser visto nas imagens da Figura 8 a seguir.. a). b) Figura 8. Exemplo de aplicação da operação morfológica de erosão. a) Imagem original e b) imagem erodida..
(24) 24. Devidamente tratados os problemas de rotação e ruídos, o próximo passo é a realização de uma segmentação na imagem. A segmentação [18][64] visa a identificar regiões dentro de uma imagem. Pode ser aplicada de formas diferentes em um documento: a segmentação pode gerar a classificação entre pixels representando tinta e papel, separando-os; ou pode ser usada para classificar em uma imagem os elementos gráficos e de texto. Analisaremos esses dois aspectos a seguir. O primeiro deles é visto em destaque no Capítulo 2 desta tese. A imagem de um documento pode conter mais do que apenas caracteres; pode ter fotos ou gravuras as quais não deverão ser tratadas pelo algoritmo para reconhecimento de caracteres. Assim, uma segmentação da imagem é necessária antes do processo de reconhecimento óptico de caracteres. De fato, nesse sentido, o processo de segmentação ocorre em duas fases: primeiro há uma segmentação do documento, determinando as áreas que possuem caracteres a serem reconhecidos e as áreas que não os possuem, como pode-se ver na Figura 9. Em seguida, é feita uma segmentação de texto, buscando a definição dos caracteres. Como dito, o objetivo da segmentação é identificar imagens, textos, etc., localizando conjuntos de elementos com características similares: uma página de documento pode ter caracteres escritos com diferentes famílias de fontes em diferentes estilos. Cada área classificada como texto é analisada quanto ao tamanho de fonte antes de proceder com a segmentação de texto, onde serão delimitados os caracteres de uma área, como explicado a seguir.. a) b) Figura 9. Simulação de uma segmentação de documento. a) Análise feita na estrutura física do documento com a identificação de diferentes regiões e b) resultado, gerando uma estrutura lógica com as classificações como texto ou figura. A segmentação de documentos, buscando a identificação das regiões de texto e de figuras, começa com uma análise da diagramação do mesmo. Cada região da imagem é delimitada por um bloco e será classificada como texto, imagem ou não importa (contendo elementos que não conseguiram ser classificados de nenhuma das duas formas; é possível, no entanto, que essa terceira classe não exista e tudo que não seja classificado como texto seja considerado imagem). Após isso, as regiões classificadas como texto passarão por um processo de segmentação de texto que, de fato, é o mesmo processo de segmentação do documento, mas definido em uma região menor e resultando em caracteres. As linhas de texto são definidas e, dentro dessas linhas, cada caractere é encontrado e classificado..
(25) 25 Áreas de cabeçalho e rodapé também podem ser identificadas, dependendo do tamanho da fonte utilizada e da resolução de digitalização. Variações quanto ao uso de segmentação podem ser encontradas na literatura, onde é tratado o problema de localização de informações em tipos específicos de documentos, tais como endereços em postais, em [62], e dados em um formulário, em [10][76]. A segmentação de documentos pode ser feita de diversas formas como exposto em [55], onde um analisador sintático é utilizado como ferramenta de auxílio a um OCR. Na referência [58], um sistema de descrição de diagramação (layout) de página é definido, localizando linhas e blocos de texto. Fletcher e Kasturi [13] tratam da segmentação de texto, onde é proposto um método para localização de caracteres sem se preocupar com a sua identificação. O algoritmo usa a transformada de Hough para localizar linhas conectadas. A segmentação de documentos é foco principal da referência [65], onde é feita uma classificação das áreas de um documento em texto e gráficos usando cálculo de densidade média de pontos em uma região. Mais detalhes sobre a transformada de Hough podem ser visto no Apêndice B desta dissertação. A transformada de Hough é novamente utilizada em [21] para determinar o tamanho do espaço entre as linhas de um documento. O algoritmo de Run-Length [18] é utilizado para diminuir a complexidade de cálculos da transformada. O Run-Length é usado para diminuir a quantidade de pixels pretos da imagem binária original, criando uma nova imagem em tons de cinza. Essa nova imagem é gerada, substituindo colunas de pixels pretos adjacentes pela quantidade de tais pixels. Esse valor corresponderá a um tom de cinza na nova imagem. Sobre essa nova imagem é que deverá ser aplicada a transformada de Hough. Algoritmos para detecção de bordas ou aproximação de curvas digitalizadas por polígonos podem ser encontrados em [42], [59], [84] e [90]. A referência [66] mostra uma visão geral sobre o assunto, analisando algoritmos que examinam a borda apenas ou toda a área interna do objeto. Definidas as áreas de texto e, dentro delas, os caracteres, uma normalização é feita em cada caractere a fim de proceder com seu reconhecimento. Algoritmos de reconhecimento mais modernos identificam diversas características de fontes como tipo (arial, times new roman, courier, etc.), estilo (negrito, itálico, sublinhado) e tamanho. Determinadas as características da fonte, procede-se com seu reconhecimento utilizando-se técnicas de classificação como veremos em maiores detalhes posteriormente. Outra aplicação do processo de segmentação de grande importância em nosso trabalho é a classificação das cores que correspondem à tinta da escrita, das cores do papel, podendo gerar duas imagens distintas, como pode-se ver um exemplo na Figura 10. A imagem original é apresentada na Figura 10a; a Figura 10b mostra a imagem da tinta em fundo branco. A Figura 10c, salienta a textura do papel, ficando a parte escrita vazada. Tal forma de segmentação é tratada em destaque em [32] para segmentação de imagens de textos datilografados e cheques. A referência [78] faz uma abordagem sobre segmentação baseada em momentos, onde, um sistema de recorte de cor é definido tal que o valor de corte varia dependendo da imagem de forma a manter inalterados os momentos da imagem de entrada e da imagem de saída. Um algoritmo semelhante, utilizando momentos, analisado posteriormente, foi testado nessa tese sem obter resultados satisfatórios. Detalhes dos algoritmos desenvolvidos no âmbito desta dissertação relativos a este tipo de segmentação serão tratados no Capítulo 2. Aplicações do processo de segmentação também são encontradas no processamento de imagens de cheques bancários. No processamento desse tipo de imagem, diferentes algoritmos de segmentação podem ser encontrados em três etapas: 1) separação do fundo do cheque (padrão para cada banco) da parte referente à tinta, 2) identificação das áreas escritas em classes (nome do correntista, valor do cheque, data, etc.) e 3) segmentação do texto para reconhecimento dos caracteres. Quanto à eliminação do padrão do papel do banco (fundo do cheque), YoshimuraYoshimura [91] sugerem a subtração da imagem do cheque e de uma imagem do padrão do banco. Tal prática é bastante simples de ser implementada e pode obter resultados satisfatórios já que os padrões, geralmente, são poucos em um mesmo banco. Assim, é necessário saber a que instituição o padrão do cheque pertence e, possivelmente, qual o tipo de cheque (já que uma.
(26) 26 mesma instituição pode ter padrões diferentes para tipos de contas diferentes). Diversos outros métodos trabalham com a extração de informações textuais do cheque como pode ser visto em [35], onde são usadas informações a priori sobre a formatação do cheque a fim de classificar as áreas de texto ou em [82], onde o uso de uma análise de cores é aplicado à extração da assinatura nos cheques.. a). b). c) Figura 10. Exemplo de Segmentação de uma imagem. a) Imagem original e imagem segmentada com a parte referente b) à tinta e c) ao papel. Em termos de OCR, enfocaremos, ao longo desta tese, principalmente a sua aplicação em documentos datilografados. Referências sobre aplicação de técnicas de OCR em textos manuscritos podem ser encontradas em [8] e [56]. Na primeira referência, uma série de técnicas.
(27) 27 são apresentadas e testadas para o reconhecimento de texto manuscrito baseadas na procura por mínimos locais em áreas da palavra a ser reconhecida. O sistema foi apresentado apenas com a inserção de imagens de palavras já isoladas como entrada sem considerar sua segmentação na imagem completa do texto. Em [56], é feita uma análise de sistemas para reconhecimento de textos manuscritos e testes são feitos em um sistema comercial voltado a este propósito. Um survey completo sobre o assunto pode ser visto na referência [77]. Maiores avanços sobre as técnicas de reconhecimento de caracteres manuscritos podem também ser encontradas em [16] (onde são analisadas e classificadas características da imagem de caracteres manuscritos a fim de facilitar seu reconhecimento), [22] (apresentando uma estratégia para isolamento de caracteres manuscritos) e [63] (uma análise de texto manuscrito em cheques franceses). Outra aplicação para reconhecimento de caracteres em documentos datilografados é no desenvolvimento de bancos de dados. Um exemplo de tal utilização de OCR’s pode ser visto em [67] onde há uma descrição completa de uma plataforma para banco de documentos.. 1.2 Algoritmos para Reconhecimento Óptico de Caracteres Muitas são as formas de proceder ao reconhecimento de caracteres de uma imagem. De fato, independente da técnica usada, quando falamos em reconhecimento de caracteres, estamos falando em técnicas de classificação de padrões. Um padrão é definido como um conjunto de elementos ordenados, de forma que, se algum elemento é alterado, obtém-se um novo padrão. No caso de reconhecimento óptico de caracteres, considera-se como padrão uma pequena porção de toda a imagem. Para imagens de documentos, a imagem é separada em suas linhas de texto e, por sua vez, as linhas têm seus caracteres separados. Cada caractere é observado dentro de uma janela a fim de determinar sua classe. Enquanto essa observação é feita, todo o resto da imagem é esquecido. Da observação dos dados na janela, toma-se a decisão da classificação do padrão, geralmente, através do uso de técnicas estatísticas ou redes neurais. Uma classe de reconhecimento é um conjunto de padrões que deve gerar uma mesma saída em um sistema de classificação. Variações não significativas em alguns pixels que formam uma letra não devem permitir que a letra seja classificada como outro símbolo qualquer. Alguns algoritmos são bastante antigos e têm uma idéia básica muito simples, como é o caso do casamento de padrões (pattern matching). Nesses algoritmos, uma base de imagens é gerada com os caracteres de uma dada fonte de letras. Esta base é usada na realização de comparações com elementos colhidos da imagem textual. Cada elemento é comparado com a base e classificado de acordo com o melhor casamento possível. Com o objetivo de conseguir resultados satisfatórios, os programas baseados neste algoritmo devem ser treinados com diversos tipos diferentes de bases vindas de diferentes tipos de fontes. Dessa forma, aumentam as probabilidades de um dado de entrada gerar uma saída correta. O uso de um maior número de bases embora, por um lado, possa aumentar a eficiência do algoritmo, provoca também um aumento em sua complexidade (tendo que executar mais comparações por entrada) e aumenta ainda o espaço necessário para armazenar a base. Observase que uma tolerância deve ser permitida em relação à entrada. Essa tolerância visa a identificação do caractere mesmo que não aconteça um casamento perfeito. Um artifício usado para melhorar a qualidade da resposta é a utilização de um dicionário de palavras características da língua da qual se faz o reconhecimento. Assim, é possível sugerir a transcrição correta de certas palavras comparando-as com os termos armazenados no dicionário. O uso de dicionários não se restringe a nenhum algoritmo específico. De fato, essa técnica é utilizada pela grande maioria dos programas que realizam reconhecimento de caracteres, não importando o algoritmo utilizado para o processo..
Outline
Documentos relacionados
Esse grau de liberdade, único para todas as janelas de moldura, é então utilizado para se estipular o valor de t para que se possa, dentro do nível de significância escolhido,
Larval immersion tests with ivermectin in populations of the cattle tick Rhipicephalus Boophilus microplus Acari: Ixodidae from State of São Paulo, Brazil.. In: Hayes WJ,
Com a apresentação deste cenário, a contribuição da investigação se valida em importância, visto que oferece uma via de acesso para o ensino de geociências contemplando a
Portanto, a intenção deste trabalho é buscar o conhecimento acerca dos aceleradores escolhidos para realização dos testes, comparando o seu desempenho, velocidade e
Este artigo descreve a atividade antiviral de dois extratos etanólicos de própolis de duas diferentes origens frente ao adenovírus canino tipo 2 CAV-2, calicivírus felino FCV e vírus
uma forma eficiente de realizar a interseção entre duas esferas e duas cascas esféricas no R 3 , desejamos investigar o efeito de acrescentarmos mais uma casca esférica extra
Após, consegui contrato pelo estado e fui trabalhar em São Vendelino, em um grupo escolar com um quinto ano, tendo 36 alunos, sendo que dois alunos eram mais
Consulte a Secção 11 para obter informações pormenorizadas sobre sintomas e efeitos na saúde.. Classificação conforme Regulamentação (EC) 1272/2008 [CLP/GHS] SECÇÃO