PDFelement
PDFelement: Editor de PDF, Scanner
Editar, Converter, Anotar PDF
Editar, Anotar PDF
Abrir Abrir
Top

Como extrair textos de imagens usando Python

Você quer extrair texto de uma imagem? Você pode fazer isso bem rápido com apenas algumas linhas de código Python. É totalmente grátis e oferece resultados com reconhecimento de som.

PDFelement: um editor de PDF potente e simples de usar

Comece a usar agora mesmo a ferramenta mais fácil que existe para lidar com PDFs, o PDFelement!

O Reconhecimento Ótico de Caracteres (OCR) é uma tecnologia que permite extrair textos de imagens. O OCR consegue reconhecer caracteres impressos ou manuscritos em imagens e extraí-los no formato de texto. Daí você poderá editá-lo e compartilhar o texto extraído usando outros programas, como um editor de texto.

Muitas ferramentas suportam o OCR. Porém, a maioria dos leitores de OCR não são gratuitos ou o uso gratuito é limitado. Felizmente, graças ao empenho de muitos pesquisadores e da comunidade dos códigos abertos, você pode testar ou usar diversos leitores OCR ótimos gratuitamente.

O Python é uma linguagem de programação eficaz e fácil que é especialmente popular no processamento de textos e imagens. Com um vasto número de bibliotecas disponíveis, o Python consegue completar automaticamente diversas tarefas, incluindo conversão de imagem em texto. Este artigo explica como usar o Python com dois leitores OCR para extrair texto de imagens.

Como extrair textos de imagens usando o Python

Usando o Tesseract

O Tesseract é um leitor de OCR de código aberto bastante conhecido que foi pré-programado para suportar mais de 100 idiomas. Neste artigo, usamos o Python-tesseract (pytesseract), um wrapper de Python para o Tesseract que permite usar o Tesseract com o Python. Todas orientações descritas neste artigo são executadas em computador rodando Windows.

Passo 1: baixe e instale o Python.

O Python 3.6+ é um requisito para usar o pytesseract. Então certifique-se de instalar uma versão mais recente do que a 3.6. Na janela de instalação, selecione Add Python X.XX to PATH para adicionar o Python automaticamente ao seu caminho do sistema. Do contrário, você terá que configurar o caminho do sistema manualmente após instalar o Python.

instale o python

Passo 2: baixe e instale o Tesseract.

Você pode baixar o pacote de instalação mais recente do Tesseract para Windows aqui. Em seguida, na janela de instalação, selecione os idiomas adicionais e scripts que você quer instalar. Por padrão, você pode instalar apenas o idioma inglês.

instale o tesseract

O Tesseract tem uma ferramenta de comando de linha bem prática que você pode usar para executar o OCR em imagens. Após instalar o Tesseract, abra uma janela CLI, navegue até a pasta em que está a imagem de onde você quer extrair o texto e execute o seguinte comando:

tesseract out

Esse comando extrai texto de uma imagem especificada e salva-o no arquivo out.txt. Para utilizar o Tesseract com o Python, prossiga para o próximo passo e instale os pacotes do Python solicitados.

Passo 3: instale os pacotes do Pillow e do pytesseract.

O Pillow é usado para processar imagens e o pytesseract é um requisito para usar o Tesseract com o Python. Você pode instalar os pacotes executando os seguintes comandos na janela CLI:

pip install pillow
pip install pytesseract

install python packages

Passo 4: escreva o código Python para extrair texto de imagens.

Quando os pacotes estiverem instalados, você estará pronto para escrever seu código Python para extrair texto de imagens. Vá até a pasta em que está a imagem de onde você quer extrair o texto. Crie um arquivo de texto e altere o nome dele para extract.py. Você pode mudar o nome do arquivo de texto para qualquer outra coisa, mas é obrigatório que a extensão do arquivo seja py.

Use um editor de texto como o Notepad para abrir o arquivo extract.py. Copie o seguinte código de amostra no arquivo e salve-o:

from PIL import Image
import pytesseract
pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files\Tesseract-OCR\tesseract.exe'
print(pytesseract.image_to_string(Image.open('test.jpg')))

Para conseguir executar esse script você precisa ter um arquivo de imagem chamado test.jpg na mesma pasta que o arquivo extract.py. Este artigo está usando a seguinte imagem como exemplo:

imagem para teste de ocr

Abra a janela CLI, vá à pasta onde a imagem está e então execute o seguinte comando:

python extract.py

Espera-se que você obtenha o seguinte comando.

tesseract result

O resultado mostra que o texto foi extraído da imagem com sucesso. Isso conclui o processo básico para usar o Tesseract com o Python. Para obter mais informações sobre o uso do pytesseract, consulte seu manual.

Se você quer extrair texto de diversas imagens em um lote, um jeito simples é adicionar os nomes dos arquivos a um arquivo TXT, como images.txt. Por exemplo:

test.jpg
test1.jpg

Então modifique o arquivo extract.py como orientado a seguir:

from PIL import Image
import pytesseract
pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files\Tesseract-OCR\tesseract.exe'
print(pytesseract.image_to_string('images.txt'))

Quando executar esse script o texto será extraído de todas as imagens especificadas no arquivo images.txt.

Usando o EasyOCR

O EasyOCR é um pacote Python que tem um leitor de OCR pronto para usar e que suporta mais de 80 idiomas. O EasyOCR é fácil de instalar e simples de usar. Por isso ele é uma ótima solução para executar um OCR com Python. Basta você instalar o PyTorch (requisito apenas no Windows) e os pacotes do EasyOCR; assim você poderá extrair textos de imagens usando o Python.

Passo 1: instale os pacotes do Python solicitados.

Para usar o EasyOCR no Windows você tem que instalar os pacotes do PyTorch e do EasyOCR. Execute os seguintes comandos em sequência para instalar os pacotes:

pip install torch torchvision torchaudio
pip install easyocr

pip install torch torchvision torchaudio

pip install easyocr

Passo 2: escreva o código Python para usar o EasyOCR.

Vá até a pasta onde sua imagem está, crie um arquivo .py, como extract.py, e então copie o seguinte código de amostra no arquivo:

import easyocr
reader = easyocr.Reader(['en'])
result = reader.readtext('test.jpg', detail = 0)
print(result)

A figura a seguir mostra o resultado do comando quando executa o arquivo extract.py.

resultado do easyocr

Como visto no resultado do comando, o texto foi extraído da imagem de teste.

Vantagens e desvantagens de usar o Python

Python é uma linguagem de programação fácil de aprender e de usar. É amplamente utilizada em Deep Learning e no Processamento de Linguagem Natural. Comparado a outras linguagens, o código Python normalmente é mais simples e curto. No entanto, leva tempo para aprender Python e você precisa pesquisar os leitores OCR que você deseja usar com o Python.

Vantagens de usar o Python para extrair texto de imagens.

  • Leitores de OCR como o Tesseract e o EasyOCR são gratuitos.
  • O Python é adequado para tarefas repetitivas e em lote com o OCR.
  • Ele é eficaz e rápido ao processar grande quantidades de imagens usando o Python.
  • Você pode obter resultados de conversão de som ajustando a opção ts do leitor de OCR.
  • Você pode salvar seu belo script Python e usá-lo sempre que precisar extrair texto de imagens. Você também pode compartilhar o script com outras pessoas que precisam fazer as mesmas conversões.

Desvantagens de usar o Python para extrair texto de imagens.

  • É necessário ter conhecimento em Python.
  • É preciso pesquisar os leitores de OCR que você quer usar.
  • Os leitores de OCR de código aberto podem não ser tão precisos quanto os pagos. Além disso, alguns podem não conseguir reconhecer textos escritos à mão.

Apesar disso, sempre é bom aprender alguma coisa nova. E você também pode recorrer a outras ferramentas quando precisar. Existem várias ferramentas que podem ajudar você a extrair texto de imagens com rapidez. Você pode escolher aquela que atender melhor suas necessidades.

Como extrair textos de imagens sem o Python

Se você é fã de programação e está procurando por uma ferramenta inovadora, o PDFelement é um app rápido e fácil que você deveria conhecer.

O PDFelement é um editor de PDF rápido e completo que permite visualizar, editar e converter PDFs. O PDFelement também tem um avançado leitor de OCR, que pode ser usado para extrair textos de imagens com precisão e eficácia.

ocr do pdfelement

Siga estes passos para extrair texto de imagens no PDFelement:

Passo 1: abra o PDFelement. Arraste o arquivo a partir do local em que está a imagem de onde você quer extrair o texto e solte-o na janela do PDFelement. Ou você pode optar por Criar PDF > Do arquivo e selecionar o arquivo de imagem. Então o PDFelement converterá a imagem em um PDF e o abrirá em uma nova guia.

Passo 2: no menu de Ferramentas, clique em "OCR" para executar uma leitura de OCR na imagem. Isso permite que o PDFelement reconheça todos os caracteres na imagem e transforme-os em texto editável e pesquisável.

Passo 3: copie o texto no local desejado e edite-o. Você também pode converter o PDF com o texto editável para outros formatos, como Word ou Excel.

Além do leitor de OCR, o PDFelement também oferece outros recursos que podem ajudar a aumentar sua produtividade.

  • Abra e visualize arquivos PDF com rapidez
  • Edite conteúdos em arquivos PDF, como textos e imagens
  • Converta PDFs para vários formatos, como EPUB e Word

Conclusão

O Python é uma linguagem de programação excelente, adequada para automatizar tarefas repetitivas. Usando o Python você conseguirá extrair textos de imagens com facilidade e rapidez com um leitor OCR de código aberto. Este artigo apresentou alguns meios de aplicar o potencial de OCR do Tesseract e do EasyOCR usando o Python.

No entanto, extrair textos de imagens usando o Python envolve programação, o que exige conhecimentos básicos de programação e de linguagem Python. Caso você não tenha conhecimento em programação, exitem muitas outras opções para extração de texto de imagens. Uma ótima opção a considerar é o PDFelement, um programa avançado e completo que pode ajudar você a extrair texto de imagens com facilidade e eficácia.

无标题文档