Java OCR Implementierung [geschlossen]

160

Dies ist in erster Linie nur Neugier, aber gibt es OCR-Implementierungen in reinem Java? Ich bin gespannt, wie sich dies nur in Java verhält, und OCR interessiert mich im Allgemeinen. Daher würde ich gerne sehen, wie es in einer Sprache implementiert wird, die ich gründlich verstehe. Dies würde natürlich erfordern, dass die Implementierung Open Source ist, aber ich bin immer noch an proprietären Lösungen interessiert, da ich zumindest die Leistung in diesem Fall überprüfen könnte.

Ich habe ein paar gesehen, die in Java verwendet werden können (wie Asprise ), aber es scheint nicht, dass dies reine Java-Implementierungen sind ... gibt es welche?

Ratte
quelle
@Robik Erstens sollten Sie, während Sie gerade dabei sind, unnötige Dankeschöns usw. entfernen. Und zweitens sollten Sie eine solche Annahme nicht bearbeiten, insbesondere wenn OP noch aktiv ist und Sie einfach einen Kommentar abgeben können - obwohl dies wahrscheinlich der Fall ist wahr in diesem Fall ... @ rat Nur um zu verdeutlichen, meinten Sie eine Überraschung?
Tobias Kienzler
Wenn Sie nicht nach einem reinen Java-Ansatz suchen, ist es möglicherweise sinnvoll, eine JNI-Bridge (wie Tess4J ) zu erstellen . Mein Gefühl ist, dass OCR-Bibliotheken in der C ++ - Welt besser vertreten sind (OCRAD, GOCR, Cuneiform - alles hier ).
dma_k
@rat - Sie haben Recht - Asprise OCR SDK für Java ist nicht rein Java-basiert. Tatsächlich wird hinter den Kulissen nativer Code verwendet, da OCR ein sehr rechenintensiver Prozess ist.
Asprise Support

Antworten:

81

Ich empfehle, das Java OCR- Projekt auf sourceforge.net auszuprobieren. Ich habe es ursprünglich entwickelt und ich habe einen Blogeintrag darauf .

Seit ich es auf sourceforge eingestellt habe, wurde seine Funktionalität durch die großartige Arbeit eines freiwilligen Forschers / Entwicklers erheblich erweitert und verbessert.

Probieren Sie es aus und wenn es Ihnen nicht gefällt, können Sie es jederzeit verbessern!

Ron
quelle
18
@ Ron Ich habe mir auch das Projekt angesehen. Ich habe die Demo nicht gefunden und die GUI führt verschiedene grafische Operationen aus, aber es gibt keine Anweisungen, wie die eigentliche Zeichenerkennung in Gang gebracht werden kann.
James P.
1
@ Ron Wenn ich dem Link zu Ihrem Blog folge, sehe ich eine leere Seite.
Neoneye
3
@ Ron Wo bekomme ich eine Dokumentation oder ein zusätzliches Blog oder Tutorial?
Altsyset
1
Wie importiere ich Java OCR in Eclipse?
Faisal Ashraf
2
Hallo, gibt es dafür Tutorials?
Der Brunnen
10

Wir haben einige OCR-Engines mit Java wie Tesseract, Asprise, Abbyy usw. getestet. In unserer Analyse lieferte Abbyy die besten Ergebnisse.

Blauer Himmel
quelle
1
Java API oder Java Implementierungen ..?
Ewoks
Es gibt jedoch keine Befehlszeilenversion, mit der Sie sprechen können ProcessBuilder.
Aaron Digulla
1
Weder Tesseract noch Abbyy basieren auf Java. Sie haben einfach APIs für Java.
Krispy
10

Wenn Sie nach einer sehr erweiterbaren Option suchen oder eine bestimmte Problemdomäne haben, können Sie Ihre eigene mit der Java Object Oriented Neural Engine rollen . Eine weitere JOONE- Referenz.

Ich habe es erfolgreich in einem persönlichen Projekt verwendet, um den Brief aus einem Bild wie diesem zu identifizieren. Die Quelle für die OCR-Komponente meiner Anwendung finden Sie hier auf github .

Davetapley
quelle
1
Ooh, danke für das Beispiel. Ich habe es heruntergeladen und plane, es an meine eigenen Bedürfnisse anzupassen!
Amanda S
Können Sie mir zeigen, wie man kompiliert?
RadijatoR
Ich fürchte, das Projekt wird @RadijatoR nicht mehr gepflegt, daher kann ich keinen Rat geben.
Davetapley
4
Die meisten Links sind tot.
Erik
5

Es gibt eine Vielzahl von OCR-Bibliotheken. Ich habe jedoch die Erfahrung gemacht, dass die wichtigsten kommerziellen Implementierungen ABBYY, Omnipage und ReadIris die Open-Source- oder andere kleinere Implementierungen bei weitem übertreffen. Diese kommerziellen Bibliotheken sind nicht primär für die Arbeit mit Java konzipiert, obwohl dies natürlich möglich ist.

Wenn Sie den Code lernen möchten, reichen natürlich die Open-Source-Implementierungen aus.

Joshua Fox
quelle
3

Habe gerade diesen gefunden (weiß es nicht, nicht getestet, überprüfe dich selbst)

Ron Cemer Java OCR


Da Sie dies nur aus Neugier benötigen, können Sie in die Quelle dieses Applets schauen.

Es macht OCR von handgeschriebenen Zeichen mit einem neuronalen Netzwerk

Java OCR: Handschrifterkennung

Jitter
quelle