Realizando um atendimento (quem lê até pensa que sou médica rs) me deparei com um problema, tinha que converter um arquivo pdf de 29 páginas para texto, até aí blz, bastava usar um:

$ pdf2text

e pronto, textos a partir do pdf em instantes.

Mas por que facilitar se podemos complicar, né!
O resultado desse comando gerava infomações lixo que não batiam com o conteúdo do pdf.

Tentando de novo, só que agora com outro tipo de arquivo de saída:

$ pdf2html

e… BINGO!! Esse pdf foi gerado a partir de várias imagens organizadas e “linkadas” num index.html. Agora tenho um arquivo html e 29 arquivos PNG.
Mas não resolvi meu problema, cadê os textos?

Vamos à “mágica”!!

OCR é um acrónimo para o inglês Optical Character Recognition, uma tecnologia para reconhecer caracteres a partir de um arquivo de imagem, ou mapa de bits. Através do OCR é possível digitalizar uma folha de texto impresso e obter um arquivo de texto editável.
Fonte: Wikipédia

O que temos nos repositórios do OpenSuse que pode nos ajudar…

anjos:~ # zypper search ocr
Loading repository data...
Reading installed packages...

S | Name        | Summary                                                   | Type
--+-------------+-----------------------------------------------------------+--------
  | gocr        | Optical Character Recognition                             | package
  | gocr-gui    | Optical Character Recognition - Basic Graphical Interface | package
  | ocrad       | GNU Ocrad--Optical Character Recognition Program          | package
  | ocrad-devel | Development files for GNU ocrad                           | package

Vamos instalar o gocr.

anjos:~ # zypper install gocr
Loading repository data...
Reading installed packages...
Resolving package dependencies...

The following NEW packages are going to be installed:
  gocr gocr-gui 

2 new packages to install.
Overall download size: 377.0 KiB. After the operation, additional 912.0 KiB will be used.
Continue? [y/n/?] (y): y
Retrieving package gocr-0.48-6.4.x86_64 (1/2), 364.0 KiB (895.0 KiB unpacked)
Retrieving: gocr-0.48-6.4.x86_64.rpm [done (68.6 KiB/s)]
Retrieving package gocr-gui-0.48-6.4.x86_64 (2/2), 13.0 KiB (17.0 KiB unpacked)
Retrieving: gocr-gui-0.48-6.4.x86_64.rpm [done]
Installing: gocr-0.48-6.4 [done]
Installing: gocr-gui-0.48-6.4 [done]

Prontinho.
Agora é só testar.

A interface do programa não é das mais atrativas, mas é funcional.

Aqui é bem simples, basta escolher o arquivo de imagem e clicar em “Run it”. Depois é só salvar o resultado num txt no menu File -> Save output.

Problema resolvido né! Quase…
Imagina ter que gerar o txt de 29 imagens. Por que não otimizar?

T=1;
for A in NACERP0102*.png
do
  if [ -f $A ] ;
  then
    gocr -i NACERP0102-$T.png -o NACERP0102-$T.txt
  fi

T=$(($T+1));
done

Obs.: Quem deu uma força gerando o script foi meu amigo Cláudio Miranda.

Missão cumprida e usuário feliz. o/

Abraços. 😀

Categorias: Linux

Sobre Carol Souza

Caroline de Souza Vieira, mais conhecida como Carol Souza, formada em Análise de Sistemas, administradora de redes Linux, incentivadora do uso de Software Livre e usuária OpenSuse. Membro atuante da Comunidade Software Livre no Rio de Janeiro, colaboradora voluntária de eventos como Hack’n Rio 2011, IV FSLDC e DFDRJ, blogueira em sites como Cotidiano Linux, Gmigos, Mulheres na Tecnologia e CooperaTI além de manter o próprio blog Carolinux. Sonhadora, amiga, determinada, criativa e movida à desafios. Uma “padawan” amante de tecnologia, aspirante a corredora, ritmista e blogueira.
  • Muito bom Carol. Mais uma vez uma solução para os problemas do dia a dia.

    • Concordo com o Vagner!! Ótimo post e excelente dica… Noto que últimamente você está com a corda toda para postar 😀

      Mas volto a reclamar por você não ir atrás do seu domínio próprio 😐

      Já falei que eu garanto a hospedagem “de grátis” e por tempo ilimitado… Ajuda aí Vagner, cobra também que ela vai atrás :)

      • Vcs são uns amores, sabia!! rsrs

        Ontem eu adiquiri o domínio carolinux.com.br só tô esperando a liberação que demora alguns dias.
        Ia ser surpresa, mas já que a chefia tá cobrando rsrs já passo as novidades logo.

        Quanto aos posts, tô muuuuuuuito animada e a idéia é sempre postar aqui tudo que minha imaginação e criatividade permitir, se eu sentir que o tema tá bacana pra colocar no CL post segundinhos depois lá tb, dessa vez não deu mas a idéia continua. 😉

        E a culpa disso tudo é de vcs, descobri q além de desafios sou movida a carinho de amigos como vcs!! :-)

        Abraços.

    • Obrigada, mestre!!! :-)

  • Douglas Santos

    gostei do lance carol!
    mais como tudo hj tem na  nuvem! segue um link mto boM!  http://www.online-convert.com/

    • Ótima dica!

      Acredito que é sempre bom ter uma “carta na manga” para todos os tipos de situação e usuários. 😉

      Abraços.

    • Júlio Jacovenko

      Douglas…boa dica.

    • carolinux

      Valeu pela dica, Douglas.
      E desculpe pela demora na resposta.

  • Pingback: Extraindo textos de imagens | Ubuntu Dicas()

  • Carol, não consegui rodar o gocr no Unbuntu, ele está instalado, como eu faço para converter um PDF para TXT?

    • Anônimo

      Regis,

      O Gocr é para converter imagens para texto, para converter PDF em TXT utilize o comando pdftotext ou pdf2text (depende do seu sistema, acho q no ubuntu é pdftotext), ok!

      Abraços. 😉

      • Eu consegui, mas o texto fica + ou -, né? Tem que arrumar muito o texto, é sempre assim?

        • Anônimo

          É texto livre, então não tem parágrafo, separação de linhas…
          Tem que arrumar depois, o legal é poder extrair o texto do arquivo (pdfs bloqueados, por exemplo).

          Abraços.

  • Parabéns Carol, ótima dica…

    • Anônimo

      Valeu! 😉

  • legal Carol, vou ver se funfa, aqui no meu Ubuntu

    • Anônimo

      Blz, qualquer dificuldade posta aí. 😉

  • Acho que não testei esse OCR ainda. Até agora usei vários e não teve nenhum que conseguisse decifrar as palavras decentemente.

    • Anônimo

      Ele é muito bom, me atendeu muito bem, vc só perde a formatação do texto, mas quanto a conteúdo não tenho o que reclamar.

  • Ai carol tenho uma lista de livros comprado em sebo que eu pretendia escanear. TODOS processos foram falhos. tentei o tesseract há dois anos, assim que der vou testar novamente as novas versões que sairam.

    • Anônimo

      Qualquer problema estamos aí!!

      Abraços.

  • Fernando Mercês

    Parabéns, Carol. Legal a dica do gocr! :)

    • carolinux

      Valeu, Fernando!! Brigadão!! 😉

  • Marcos

    Vlw pela dica Carol.
    Funcionou perfeitamente aqui no Ubuntu 12.04

    • carolinux

      Opa, que bom!!
      Ainda não tinha testado no 12.04, bom saber disso.

      Abraços.

  • Felipe Facundes

    Carol, eu criei esse script simples usando tesseract, é mais preciso que o gocr e faz conversão de vários arquivos de imagem de uma só vez, BATCH função.

    #!/bin/bash
    for i in *.jpg ; do tesseract $i $i -l por; done;

    #
    #Podendo muda a extensão de *.jpg, para *.tif, se preferir

  • João Nogueira da Digitar Digit

    Ola Carol Souza… estou com problema em gerar TXT a partir da imagem TIFF este é um software free que eu posso baixar

  • RSS
  • Delicious
  • Facebook
  • Twitter
  • Linkedin
  • Youtube

Posts Populares

Remote Desktop via W

Recentemente precisei usar o Remote Desktop do Windows para acessar ...

Extraindo textos a p

Realizando um atendimento (quem lê até pensa que sou médica ...

À caça de um Malwa

Escrevendo novos posts até tarde da noite, divulgando e acompanhando ...

Erro no "apt-get upd

Essa é mais uma daquelas histórias em que a simples ...

Mulheres em moviment

Neste último domingo consegui realizar um grande desejo, participar de ...