OCR no Ubuntu

Presumo que você saiba o que é OCR (Optical Character Recognition, ou em nosso idioma, Reconhecimento Óptico de Caracteres). Num resumo simples, você precisa dele quando quer copiar e colar a partir de um texto salvo como uma imagem.

Caso você não tenha uma imagem pronta, ou seja, se ainda vai escanear o documento, a opção é usar o gscan2pdf, um programa que escaneia e faz o OCR concomitantemente. Ele, o gscan2pdf, é gráfico e intuitivo, razão pela qual vou deixar você mesmo lidar com ele.

A dica, aqui, é pertinente para quem já tem o PDF, ou seja, já tem a imagem pronta, pois não conheço programa capaz de escanear um PDF diretamente. Mas há solução, como sempre envolvendo um pouco de linha de comando.

Primeiro vamos instalar tudo que precisamos:

$ sudo apt-get install tesseract-ocr tesseract-ocr-por gscan2pdf imagemagick nautilus-open-terminal

Reiniciamos o sistema, para evitar problemas com os novos programas/configurações.

Agora, navegamos até a pasta onde está nosso PDF pelo Nautilus (Gerenciador de Arquivos) e clicamos com o direito do mouse num espaço vazio da janela da direita, escolhendo “Abrir num terminal”. No terminal aberto, já na pasta onde o PDF está, primeiro o convertemos para uma imagem aceita pelo Tesseract, nosso programa de OCR. O comando para isso é:

$ convert -density 300 arquivo.pdf -depth 8 arquivo.tiff

Troque arquivo.pdf pelo nome do “seu” PDF, sendo arquivo.tiff o arquivo de saída, convertido e contendo tantas páginas quanto o PDF que lhe deu origem (você pode confirmar isso abrindo-o com o Evince, o leitor de PDF padrão do Ubuntu).

Note que a conversão deve levar tempo proporcional ao número de páginas do PDF original e o arquivo resultante deve ocupar bastante espaço, pois será de alta resolução para facilitar o OCR, que devemos rodar em seguida com o comando:

$ tesseract arquivo.tiff texto -l por

No comando acima, o arquivo TIFF resultante da conversão do PDF será lido e o resultado em texto integrará o arquivo texto, que terá a extensão TXT por padrão. Finalmente, a opção “-l por” indica que o texto a ser lido está em português.

Complicado? Nem tanto.

E para mim, ser capaz de fazer isso é uma tremenda mão-na-roda, sobretudo quando preciso fazer várias citações de um determinado texto, ou mesmo copiar descrições monótonas de certidões oficiais.

Sobre pinduvoz

Advogado por profissão, entusiasta do SL por opção.
Esse post foi publicado em Ubuntu e marcado , , , , . Guardar link permanente.

6 respostas para OCR no Ubuntu

  1. Marcio disse:

    e se o arvivo que quero esiver em ingles e não em portugues?

  2. Marcio disse:

    Nesse comando ”$ convert -density 300 arquivo.pdf -depth 8 arquivo.tiff” esses valores 300 e 8 são constantes?

  3. Francisco disse:

    Ao rodar:
    $ convert -density 300 arquivo.pdf -depth 8 arquivo.tiff

    Obtive este erro:
    **** Warning: File has an invalid xref entry: 3999. Rebuilding xref table.

    Sabe do que se trata?

    Obrigado

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s