tesseract - Reconhecimento de caracteres em imagens

Publicado por Bruno Rodrigues Leite Correia em 28/02/2013

[ Hits: 14.828 ]

 


tesseract - Reconhecimento de caracteres em imagens



Olá, pessoal do VOL.

Minha dica de hoje é sobre um software que utilizei para o reconhecimento de caracteres. Estou falando do tesseract.

Inicialmente meu projeto tinha por objetivo o reconhecimento de placas veiculares, para um simples controle interno no estacionamento da minha empresa.

Utilizando um software chamado fswebcam, consegui capturar imagens a partir do terminal. Assim posicionei duas câmeras nas vagas do meu estacionamento, capturando uma foto da placa de cada veículo estacionado.

Com o tesseract consegui transformar as imagens em caracteres para o armazenamento em banco MySQL.

Com isso, alimentei meu banco de dados com as placas dos veículos, hora de chegada e hora de saída de cada carro.

Instalando o tesseract (em distribuições baseadas no Debian):

# apt-get install tesseract-ocr

Convertendo imagem "teste.jpg" para texto:
Linux: Reconhecimento de caracteres com tesseract
No diretório da imagem a ser convertida, digite o comando abaixo:

# tesseract teste.jpg -psm 8 resultado

O comando acima reconhece os caracteres na imagem e com parâmetro "-psm 8", os dados da imagem são tratados em uma única palavra.

O resultado será armazenado no arquivo "resultado", como informado no comando acima.

# cat resultado
MMM-0058

Prontinho, os caracteres da imagem já estão disponíveis em texto.

Abraço a todos!

Outras dicas deste autor

Synergy - Controlando seu Android com o teclado/mouse do PC

Zim desktop wiki + Dropbox

fswebcam - Tirando foto pelo terminal

XMacro - Gravando e reproduzindo ações do teclado/mouse

SubDownloader - Gestor de download/upload de legendas

Leitura recomendada

Como atualizar do Debian Etch (servidor ou desktop) para o Debian Lenny (tradução)

Reduzindo o tamanho dos executáveis gerados pelo Lazarus (via IDE)

Deixando o VIM colorido

VI colorido

Duas dicas de SSH

  

Comentários
[1] Comentário enviado por fabio em 28/02/2013 - 12:36h

Cara, meus parabéns. Muito boa a dica!

[2] Comentário enviado por pauloruela em 28/02/2013 - 19:48h

Excelente dica .. porém tenho algumas perguntas ...

- Qual a qualidade das imagens que você utiliza?
- Existe a necessidade de "cortar" a imagem como você fez com o exemplo?


Fiz alguns testes aqui, mas penso que, devido a qualidade não funcionou a contento.

Valeu!



[3] Comentário enviado por correiabrux em 28/02/2013 - 20:13h

Boa noite Paulo.

Sobre as imagens, configurei as câmeras ip para captura em preto e branco, sem a necessidade de cortes na imagem.

Em meu caso, o posicionamento da câmera ajudou, pois consegui um bom foco nas placas.

Durante os testes, percebi que em alguns casos o software não reconhecia os caracteres, por isso adaptei meu projeto para utilizar um software chamado motion.
Esse software captura imagens com suporte a detecção de movimentos.

Dessa maneira, quando um veículo se aproxima, o motion detecta um movimento e começa a fazer capturas, tirando um total de 30 fotos aproximadamente.

Depois das 30 fotos consecutivas, coloco o tesseract para funcionar, fazendo tentativas de conversão dos caracteres de cada foto.
Em meu script o tesseract interrompe as tentativas quando consegue converter uma imagem no formato que determinei "XXX-0000".

Espero ter ajudado.

Abraço.

[4] Comentário enviado por adriano_sousa em 28/06/2013 - 09:51h

Olá galera,

Estou cursando técnico em informática na etec e meu tcc é sobre o controle de acesso de veículos.
Fui orientado a utilizar a tecnologia ocr para converter as imagens em caracteres das placas do veículos.
Gostaria de saber se alguém pode me ajudar para a utilização da aplicação acima citada.

Abraços....

[5] Comentário enviado por pizorno em 18/10/2013 - 11:55h

Bom dia Bruno, é possível me informar qual modelo de camêra IP usada? Estou interessado em montar um projeto semelhante. Aguardo o teu retorno.

Valeu, e parabéns pelo projeto.

[6] Comentário enviado por pinguim007 em 09/11/2013 - 23:59h

Olá Bruno!


É possivel já baixar o tesseract já treinado?

É possivel esse tipo de compartilhamento? Ou todo mundo deve treina-lo desde o inicio?

Grt

[7] Comentário enviado por pinguim007 em 12/11/2013 - 05:04h

Olá pessoal,

pelo jeito o bruno não está mais cuidando do artigo... Alguém poderia me responder a pergunta?

Agradeço.

[8] Comentário enviado por xxis em 28/02/2014 - 16:44h

Você ja pode baixar o tesseract treinado sim, neste link vc pode fazer o download https://code.google.com/p/tesseract-ocr/downloads/list



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts