Como usar o Tesseract no Windows
On Janeiro 14, 2022 by admin
Tesseract é um software de reconhecimento óptico de caracteres que foi desenvolvido pelo Google. É uma ferramenta de OCR de código aberto. Existem muitas versões do tesseract mas vamos usar a versão 4.0.
Na versão 4, o Tesseract implementou um mecanismo de reconhecimento baseado em Memória de Longo Prazo Curto (LSTM). LSTM é um tipo de Rede Neural Recorrente (RNN). O reconhecimento baseado em LSTM funciona muito mais efetivamente do que os antigos processos de reconhecimento (baseados em CNN).
Obrigado a tesseract, poderemos salvar o conteúdo de nossas imagens como arquivos de texto.
Instalação
A isntalação depende do seu sistema operacional. Agora vamos atravessar as janelas. Primeiro, vamos baixar e instalar tesseract thorugh este link. (Ele baixa um arquivo exe.) Nós configuramos o arquivo exe facilmente.
Depois disso, devemos adicionar um PATH às variáveis do sistema Windows. Na verdade, é um passo fácil. Primeiro encontramos e copiamos a pasta raiz da instalação do tesseract. Será assim :
C:\Program Files\Tesseract-OCR
E depois na barra de busca do windows Advanced System Settings
Advanced system settings > Advanced > Environment variables > PATH > New
Colamos o caminho de origem que foi copiado e guardamos estas configurações. Após este passo o computador deve ser reinicializado para aplicar as configurações.
A instalação do tesseract concluída. Você pode confirmar a instalação a partir da linha de comando. Quando executamos o comando tesseract na linha de comando, ele deve nos dar informações sobre o programa.
>
Agora podemos passar para a parte python. Para usar o tesseract em python, devemos baixar a biblioteca de pytesseract. Esta biblioteca pode ser baixada via pip para o ambiente que você está usando.
pip install pytesseract
Agora o tesseract está pronto para uso!!
Codificação
É muito simples usar o tesseract. A parte mais difícil é a otimização das configurações.
Porque se você quiser fazer um ocr com sucesso, você precisa ter cuidado no passo de processamento de imagens e configurações de ocr.
Vamos aplicar OCR no recibo.

Importar as bibliotecas
import pytesseract
from PIL import Image
import cv2
import numpy as np
Configurar o valor do DPI da imagem
Dots per inch (DPI, ou dpi) é uma medida da densidade de pontos do vídeo ou scanner de imagem. O valor de DPI é uma coisa importante para executar OCR. Porque se o valor do DPI for menor que 300, pode reduzir o sucesso do OCR.
file_path= 'receipt.jpg'
im = Image.open(file_path)
im.save('ocr.png', dpi=(300, 300))
Aplicando algumas técnicas para fazer um limpador de imagem
Primeiro escalamos nossa imagem com x2. Se os caracteres são pequenos então precisamos escalar a imagem para reconhecê-la. Depois disso aplicamos uma técnica simples de limiar. O seu Limiar Binário. Primeiro você deve tentar com 127 valor depois disso diferentes variáveis podem ser tentadas. O thrashold muda o pixel com preto se o valor do pixel sobre o valor limiar. Se fizermos a escala de cinza da imagem, ela nos dará uma imagem em preto e branco.
Existem diferentes técnicas de threshold. Você pode verificar o site fonte com este link.

Executar o tesseract
Agora podemos executar o tesseract. Ele tem uma função image_to_string(). Ela nos dá uma string como saída.
text = pytesseract.image_to_string(treshold)
Saving Output
Podemos salvar a saída com o seguinte código.
with open("Output.txt", "w",5 ,"utf-8") as text_file:
text_file.write(text)
A saída do OCR é como segue:
O resultado é muito bem sucedido. Se for desejado maior sucesso, diferentes operações podem ser aplicadas à imagem.
Deixe uma resposta