Processamento de imagens de documentos - Parte III

Autores: Stefano Kubiça - GPS   Edouard Lethelier - PUC-Pr

Uma imagem de documento é uma matriz de pontos chamados pixels, adquirida através de um processo de digitalização, a partir do papel ou microfilme.

O processamento de imagens de documentos tem como principal objetivo gerar um arquivo de documentos eletrônicos, de modo que os documentos possam ser guardados de forma segura e acessados com facilidade.

Normalmente, o processamento é uma etapa da produção de documentos eletrônicos[1] e envolve as seguintes fases na seqüência:

  • Aquisição de imagens [1]
  • Pré-processamento [3]
  • Segmentação [1]
  • Reconhecimento [4]
  • Pós-processamento

A fase de aquisição, foi tratada em artigo publicado no Bate Byte anterior, o pré-processamento será aqui tratado e as demais fases serão tratadas nos próximos números desta publicação.

Pré-processamento

  1. Introdução
  2. O pré-processamento tem como principais objetivos a correção e a preparação da imagem.

    A correção é realizada quando a imagem adquirida apresenta algum problema, como por exemplo: inclinação, ruído ou falhas. Para cada um dos casos são usados algoritmos específicos como ajuste da inclinação, eliminação do ruído e recuperação de falhas.

    A preparação é realizada com o objetivo de facilitar o processamento da fase seguinte que é a segmentação. Na preparação, são usados

    algoritmos para realçar dados de interesse e eliminar dados que podem dificultar a segmentação. Os procedimentos mais utilizados na preparação são a limiarização, exclusão de linhas e a suavização.

    2. Correção de inclinação

    Um problema muito comum originado da fase de aquisição é a inclinação da imagem. Dados contidos no documento tais como: linhas, figuras, textos, etc., determinam a orientação do documento em termos de inclinação horizontal/vertical. Considerando que o documento original tem inclinação zero, podemos determinar e corrigir a inclinação da imagem se ela for diferente de zero.

    Quando os documentos são digitalizados manualmente, é muito comum termos problemas de inclinação. Scanners com alimentação automática de papel têm este problema bastante minimizado e a maioria dos scanners mais sofisticados possui rotinas para detectar e corrigir a inclinação ainda na fase de aquisição. É importante destacar que o sucesso das fases posteriores do processamento eletrônico de documentos exige que a imagem não esteja inclinada. Uma imagem inclinada pode apresentar grandes dificuldades na localização de entidades para segmentação do documento e também a taxa de reconhecimento de caracteres inclinados pode ser muito baixa.

    As mais importantes técnicas para detecção e correção da inclinação são:

    Perfil do documento

    É um método popular para detectar a inclinação. Usa um histograma do número de pixels ligados acumulados ao longo das linhas do documento. O perfil pode estar em qualquer direção, mas será horizontal ao longo das linhas e vertical ao longo das colunas. Tais perfis são chamados perfis de projeção horizontal e vertical respectivamente.

    O uso mais direto do perfil de projeção para descoberta da inclinação é computar a inclinação de vários ângulos próximos da orientação esperada. Cada medida é calculada da variação na altura ao longo do perfil, e a variação máxima dá o ângulo de inclinação. O ângulo de inclinação correto é esquadrinhado pelas linhas do texto. O perfil de projeção tem no histograma cumes de altura máxima para o texto e vales nos espaços entre linhas.

    O método apresenta limitações quando, por exemplo, em um documento multicolunas, as linhas das respectivas colunas não estão na mesma posição, neste caso, o histograma não tem significado.

    Transformada de Hough

    A transformada de Hough é muito útil para descoberta de linhas em uma imagem. Pode ser usada a mesma técnica para encontrar a inclinação das linhas dentro do documento. A transformada de Hough mapeia cada ponto de uma linha da imagem original em um único ponto. O processamento pela transformada de Hough é demorado em pontos individuais, mas podemos aumentar a velocidade, processando somente segmentos. Em documentos, para melhorar a performance, computa-se um "destaque" das imagens para reduzir o número de transformações de pixel para o espaço de Hough. Estes destaques horizontais e verticais são executados ao longo de linhas ou colunas, respectivamente. Os destaques são codificados para se ter a localização das linhas no fim da execução. A imagem de destaque é transformada, então, no espaço de Hough. Aqui, cada valor do destaque é acumulado em um ponto que representa segmentos de linhas. No espaço de Hough o cume aponta para o ângulo ao qual o número maior de linhas diretas deve ser ajustado pelos pixels originais, e este é o ângulo de inclinação.

  3. Limiarização
  4. Quando a imagem é adquirida em níveis de cinza, muitas vezes e necessário utilizar a técnica da limiarização para reduzir a quantidade de dados a serem tratados, eliminar ruídos e facilitar e extração de componentes existentes no documento.

    A limiarização é também conhecida como binarização porque, a partir de um valor limiar, 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.

    Como exemplo temos a imagem da figura 1, com 256 níveis de cinza, que foi limiarizada usando o limiar 150 e cujo resultado aparece na figura 2.


    Figura 1: Imagem em 256 níveis de cinza.


    Figura 2: limiarização da fig.1 com limiar 150.

    A limiarização transforma uma imagem em nível de cinza ou colorida em uma imagem binária, reduzindo drasticamente o tamanho da imagem em Bytes e assim agilizando os processamentos das fases posteriores.

    Se os valores dos pixels dos componentes da imagem e aqueles do fundo são razoavelmente consistentes em seus respectivos valores sobre a imagem inteira, então um simples valor de limiar pode ser encontrado para esta imagem. Esta utilização de um simples limiar para todos os pixels da imagem é chamada de limiarização global [3]. Contudo, para vários documentos, um único valor de limiar global não pode ser usado igualmente por causa das deformidades dentro das regiões de primeiro e segundo planos. Por exemplo, para um documento contendo áreas de fundo brancas bem como áreas de destaque de um fundo colorido diferente, os melhores limiares mudarão por área. Para este tipo de imagem, os valores de limiar diferentes são requeridos para áreas de locais diferentes. Este tipo de uso é chamado de limiarização adaptativa [3].

    A escolha de um método de limiarização

    Se os métodos de limiarização global e adaptativos são usados para binarização, não se pode nunca esperar resultados perfeitos. Dependendo da qualidade do original, pode haver buracos nas linhas, bordas rompidas nas regiões limítrofes e regiões de pixels estranhas com valores LIGADO e DESLIGADO. A suposição de que os resultados do processamento não serão perfeitos é geralmente verdadeira com outros métodos de processamento de documento e certamente com o processamento da imagem em geral. O procedimento recomendado é processar tanto quanto possível cada passo, mas adiar as decisões que não necessitam ser executadas até passos recentes, para evitar erros irreparáveis. Nessas últimas etapas, existe mais informação do resultado do processamento do que aquele ponto e esta informação provê um maior contexto e descrições de alto nível para auxiliar na tomada de decisões corretas e por conseguinte, a segmentação e o reconhecimento. O adiantamento, quando possível, é um princípio apropriado para todos os passos no processamento eletrônico de documentos (exceto o último, é claro).

    Existem diferentes métodos de limiarização [3]. Nenhum método é melhor para todos os tipos de imagens e aplicações. Para problemas mais simples, onde as características da imagem não variam muito dentro dela ou entre diferentes imagens, os métodos mais simples serão suficientes. Para problemas mais difíceis de ruído ou características da imagem variantes, métodos mais complexos geralmente são requeridos [3]. Os produtos comerciais variam em suas capacidades de limiarização. Os scanners atuais executam a binarização com um valor de limiar fixo. Sistemas de documentos mais sofisticados provêm técnicas manuais ou automáticas baseadas em histogramas para a limiarização global. O uso mais comum de limiarização adaptativa está em sistemas de objetivos especiais usados por exemplo em bancos para representar cheques. A melhor maneira de escolher um método neste momento é primeiro estreitar as escolhas através de descrições de métodos e então ir experimentando-os com os outros e examinando seus resultados.

    Como não existe um melhor método de limiarização, há bastante espaço para futuras pesquisas neste campo. Um problema que requer mais trabalho é identificar métodos de limiarização ou enfoques que melhor trabalhem com documentos com características particulares. Muitos dos métodos existentes não foram formulados para documentos em particular, e seus desempenhos não são bem conhecidos. Os documentos possuem características, tais como linhas finas, que favorecerão um método sobre outro. Relacionando a questão de qual método é o melhor para usar e como melhor quantificar os resultados da limiarização, para um texto, uma forma é executar o reconhecimento óptico dos caracteres (OCR) nos resultados binarizados e medir a taxa de reconhecimento para limiares diferentes. Outro problema que requer trabalho adicional é o de multilimiarização. Às vezes, os documentos não possuem dois, mas três ou mais níveis de intensidade. Por exemplo: vários jornais contendo caixas destacadas dentro do texto, onde o texto é colocado contra o fundo (segundo plano) com um diferente nível de cinza ou cor. Enquanto as capacidades de multilimiarização têm sido reivindicadas para alguns dos métodos discutidos acima, poucos trabalhos têm sido focalizados neste problema [3].

  5. Eliminação de ruído
  6. Outro problema muito comum proveniente da aquisição de imagens são os ruídos. Ruídos são dados indesejáveis inseridos na imagem na fase de aquisição e que devem ser eliminados. Os ruídos podem ter as mais diversas origens, sendo as principais, o ajuste do equipamento de digitalização e a qualidade do documento a ser digitalizado. Como exemplo podemos considerar na figura 2 onde o fundo resultante da limiarização pode ser considerado como ruído. Utilizando um algoritmo de filtragem podemos obter uma imagem bastante melhorada conforme mostra a figura 3.


    Figura 3: ruídos eliminados da figura 2.

  7. Exclusão de linhas
  8. As linhas em um documento normalmente servem para delimitar campos de escrita, como por exemplo: nome, data, valor, etc. Quando o nosso interesse é o conteúdo destes campos mas a estrutura do campos for irrelevante, podemos eliminar as linhas horizontais/verticais para facilitar o acesso às informações escritas e não deixar que as linhas atrapalhem nas fases de segmentação e reconhecimento.

    Projeções do histograma horizontal e vertical da imagem são utilizados para detectar e remover as linhas horizontais e/ou verticais (Fig. 4).


    Fig. 4: Histograma para detectar linhas a serem excluídas

     

    Se as linhas não estão inclinadas e estão separadas, a projeção do histograma é separada por picos e vales. Esta estratégia falha para linhas diagonais ou quando a imagem estiver inclinada. Neste caso, para garantir que a imagem não esteja inclinada, deve-se utilizar uma das técnicas mencionadas anteriormente para corrigir a inclinação.

    É importante reforçar que os critérios de eliminação de linhas devem ser muito bem estudados. Podem existir regiões em um documento onde algumas linhas devem ser preservadas para facilitar a segmentação e o reconhecimento. Por exemplo: um documento que possui figuras geométricas e também linhas que delimitam escritos, pode ser desastroso eliminar todas as linhas do documento se as figuras geométricas são fundamentais nos processos de segmentação e reconhecimento.

  9. Suavização

A suavização de imagens é empregada para reduzir ruído, realçar as características da imagem e para reduzir detalhes não desejados. A maioria das técnicas de suavização pode ser classificada em três famílias: mediação local, suavização baseada em modelos, suavização geométrica.

Suavização baseada em mediação local

A suavização baseada nas operações de mediação local pressupõe o nível de intensidade sobre toda a imagem. Essa hipótese é um caso especial da suposição mais geral de que a maioria das imagens descreve a superfície de cenas contínuas numa resolução de imagem adequada para a interpretação ser possível. Em uma abordagem de suavização baseada nessa concepção, troca-se o centro de uma pequena região em volta de um pixel (tipicamente um janela quadrada) pela média ponderada dos valores encontrados nessa janela; essa operação é idêntica para cada pixel da imagem. Outra abordagem usada para evitar o efeito de pixels indesejados e para preservar as bordas consiste em usar o filtro da mediana, no lugar da média, dos valores de intensidade da janela.

Suavização baseada em modelos a priori

Esta técnica é típica de uma abordagem global para suavização. Supondo que nós tenhamos um modelo de como a iluminação varia em uma imagem. Por exemplo: se nós sabemos que a iluminação pode ser modelada como uma função quadrática, nós podemos ajustar uma superfície quadrática nos valores de intensidade dos pixels em uma porção estendida da imagem. A intensidade de cada pixel é então subtraída do valor correspondente da superfície ajustada, deixando somente as variações de grande ordem do sinal subjacente. Assim, impede-se que um artefato conhecido interfira na nossa análise da informação intrínseca que reside na imagem.

Suavização geométrica

A suavização geométrica de uma imagem pode ser realizada assumindo-se que pequenas regiões isoladas consistem em ruídos e podem ser eliminadas e que pequenos furos (intervalos) entre regiões são artefatos da imagem que podem ser preenchidos. Tal suavização pode ser prontamente realizada em imagens binárias usando seqüências de operações de emagrecimento e crescimento. Nesta abordagem de emagrecimento e crescimento, para eliminação de pequenas regiões ruidosas, usa-se primeiro a operação de emagrecimento na qual pixels pretos que não estejam completamente cercados de pretos são convertidos para brancos. A operação de emagrecimento pode ser realizada de forma interativa muitas vezes. Uma operação de crescimento pode então ser usada na qual todos os pixels pretos que não são completamente cercados por pretos são providos com pixels pretos ao redor. Qualquer pequena região de ruído preta terá sido eliminada pelas operações de emagrecimento, e as maiores regiões serão mantidas inalteradas se os números de operações de emagrecimento e crescimento forem iguais.

REFERÊNCIAS BIBLIOGRÁFICAS

[1] FACON, Jacques. Processamento e análise de imagens. Curitiba : PUC Pr, 1998. (Curso de Mestrado em Informática Aplicada).

[2] KUBIÇA, Stefano. Gerenciamento eletrônico de documentos. Bate Byte, Curitiba, n. 88, p. 14-15, Jul. 1999.

[3] O’GORMAN, Lawrence. Document image analysis. Los Alamitos : IEEE Computer Society Press,1995.

[4] SCHALKOFF, Robert. Pattern recognition statistical, structural and neural approaches. New York : J. Wiley, 1992.