OCR com JAVA

Fala aí meus amigos JAVEIROS, como estão?

Mais uma vez eu perguntando e enchendo a paciência de vocês mas fazer o que né. Vamos lá estou com precisando estudar OCR (Optical Character Recognition) e maneiras de implementar ele com o dia a dia aqui do meu novo trabalho, eu era de BI e virei developer <o/, então tenho que fazer um levantamento se é viável, fácil e vantajoso ser feito. Estava lendo uns conteúdos na internet sobre isso e muita gente fala que as API’s desenvolvidas são ruins e fracas pra isso, procede essa informação? Se alguém já criou algum sistema com utilizando OCR poderia dar dicas? Toda ajuda nessa hora é bem vinda!

Obrigado a todos e boa semana!

Olá carloshsamaral,

Não costumo utilizar o GUJ, mas por algum motivo caí de paraquedas nessa sua pergunta.

Eu estou trabalhando ultimamente num sistema de acervo multimídia, onde serão centrados diversos tipos de mídias, e implementamos a funcionalidade de pesquisar dentre os documentos utilizando o conteúdo do mesmo. Para que não só documentos já digitais fossem encontrados foi implementada uma solução OCR.

Nós estamos utilizando o Tesseract OCR pra executar tal tarefa, para a integração com Java utilizamos o Tess4J. Os resultados são bem satisfatórios, não é uma uma precisão de 100%, mas já é oferecido suporte para PT-BR e é de fácil utilização, uma pesquisa rápida e você encontra exemplos de utilização do Tesseract OCR e do Tess4J.

Quando falo que não é uma precisão 100%, quero dizer que dependendo da fonte, dependendo da qualidade da imagem (caso seja texto na imagem), ele pode não reconhecer alguns caracteres, ou reconhecer errado, trocando um E por um F ou algo assim, mas de um modo geral a precisão é bem alta, não sei informar exatamente de quanto.

Espero ter ajudado.

OBS: O sistema ainda não foi pra produção, então essa análise na precisão do OCR foi feita em cima de alguns testes internos.

[quote=Wener Castro]Olá carloshsamaral,

Não costumo utilizar o GUJ, mas por algum motivo caí de paraquedas nessa sua pergunta.

Eu estou trabalhando ultimamente num sistema de acervo multimídia, onde serão centrados diversos tipos de mídias, e implementamos a funcionalidade de pesquisar dentre os documentos utilizando o conteúdo do mesmo. Para que não só documentos já digitais fossem encontrados foi implementada uma solução OCR.

Nós estamos utilizando o Tesseract OCR pra executar tal tarefa, para a integração com Java utilizamos o Tess4J. Os resultados são bem satisfatórios, não é uma uma precisão de 100%, mas já é oferecido suporte para PT-BR e é de fácil utilização, uma pesquisa rápida e você encontra exemplos de utilização do Tesseract OCR e do Tess4J.

Quando falo que não é uma precisão 100%, quero dizer que dependendo da fonte, dependendo da qualidade da imagem (caso seja texto na imagem), ele pode não reconhecer alguns caracteres, ou reconhecer errado, trocando um E por um F ou algo assim, mas de um modo geral a precisão é bem alta, não sei informar exatamente de quanto.

Espero ter ajudado.

OBS: O sistema ainda não foi pra produção, então essa análise na precisão do OCR foi feita em cima de alguns testes internos.
[/quote]

Muito obrigado Wener por ajudar desta forma. Eu já cheguei a pegar um conteúdo desse Tesseract OCR do devmedia. Só estou fazendo uma pesquisa pra obter o máximo de conteúdo e começar a ler de verdade. To lendo até trabalho de mestrado de 1991 falando sobre OCR e redes neurais.

@Edit

Mas as imagens que vocês utilizam são todas digitalizadas? Tem alguma que seria escrita a mão e foi digitalizada …?