Implementação de OCR Java [fechado]


160

Isso é principalmente curiosidade, mas existem implementações de OCR em Java puro? Estou curioso para saber como isso funcionaria puramente em Java e o OCR em geral me interessa, então eu adoraria ver como isso é implementado em uma linguagem que eu entendo completamente. Naturalmente, isso exigiria que a implementação fosse de código aberto, mas ainda estou interessado em soluções proprietárias, pois eu poderia pelo menos verificar o desempenho nesse caso.

Eu vi alguns que podem ser usados ​​em Java (como o Asprise ), mas não parece que essas sejam implementações puras de Java ... existem?


@ Robik Antes de tudo, enquanto você faz isso, você também deve remover agradecimentos desnecessários etc. verdade neste caso ... @ rat Apenas para esclarecer, você quis dizer surpresa?
— precisa saber é o seguinte

Se você não procurar uma abordagem Java pura, talvez seja melhor construir uma ponte JNI (como o Tess4J ). Meu sentimento é que as bibliotecas de OCR estão melhor representadas no mundo C ++ (OCRAD, GOCR, Cuneiform - veja tudo aqui ).
— Dma_k

@rat - Você está certo - o Asprise OCR SDK para Java não é baseado apenas em Java. De fato, nos bastidores, o código nativo é usado, pois o OCR é um processo muito computacionalmente caro.
— Asprise Support

Respostas:


81

Eu recomendo tentar o projeto Java OCR no sourceforge.net. Eu o desenvolvi originalmente e tenho uma postagem no blog .

Desde que eu o coloquei no sourceforge, sua funcionalidade foi expandida e melhorada bastante através do excelente trabalho de um pesquisador / desenvolvedor voluntário.

Experimente e, se você não gostar, pode sempre melhorar!


18
@ Ron Também dei uma olhada no projeto. Não encontrei a demonstração e a GUI realiza várias operações gráficas, mas não há instruções sobre como obter o reconhecimento real de caracteres.
— James P.

1
@ Ron quando sigo o link para o seu blog, vejo uma página em branco.
— amigos estão dizendo sobre neoneye

3
@ Ron, onde posso obter uma documentação ou blog ou tutorial adicional.
— Altsyset

1
como importar java ocr no eclipse?
— Faisal Ashraf

2
Oi, existem tutoriais para isso?
— The Well

10

Testamos alguns mecanismos de OCR com Java como Tesseract, Asprise, Abbyy etc. Em nossa análise, Abbyy deu os melhores resultados.


1
API Java ou implementações Java ..?
— Ewoks

Nenhum, mas existe uma versão de linha de comando com a qual você pode falar usando ProcessBuilder.
— Aaron Digulla

1
Nem o Tesseract nem o Abbyy são baseados em Java. Eles simplesmente têm APIs para Java.
— 22414 krispy

10

Se você estiver procurando por uma opção muito extensível ou tiver um domínio de problema específico, considere usar o seu próprio mecanismo Java Neural Oriented a Objetos Java . Outra referência JOONE .

Eu usei com sucesso em um projeto pessoal para identificar a letra de uma imagem como essa ; você pode encontrar toda a fonte do componente OCR da minha aplicação no github, aqui .


1
Ooh, obrigado pelo exemplo. Eu baixei e planejo adaptá-lo para minhas próprias necessidades!
— Amanda S

Você pode me mostrar como compilar?
— Radijator

Receio que o projeto não seja mais mantido @RadijatoR, por isso não posso oferecer nenhum conselho.
— Davetapley 20/07

4
A maioria dos links está morta.
— Erik

5

Há uma variedade de bibliotecas de OCR por aí. No entanto, minha experiência é que as principais implementações comerciais, ABBYY, Omnipage e ReadIris, superam em muito o código aberto ou outras implementações menores. Essas bibliotecas comerciais não foram projetadas principalmente para trabalhar com Java, embora, é claro, seja possível.

Obviamente, se seu interesse é aprender o código, as implementações de código aberto farão o truque.


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.