Реалізація Java OCR [закрито]


160

Це в першу чергу просто цікавість, але чи є реалізація OCR в чистому Java? Мені цікаво, як це буде працювати виключно на Java, і мене загалом цікавить OCR, тому я хотів би побачити, як це реалізовано мовою, яку я досконально розумію. Звичайно, це вимагатиме, щоб реалізація була відкритим кодом, але я все ще зацікавлений у власних рішеннях, оскільки я міг хоча б перевірити ефективність у такому випадку.

Я бачив пару, яку можна використовувати на Java (наприклад, Asprise ), але не здається, що це чисті реалізації Java ... Чи є такі?


@Robik По-перше, поки ти на це, ти також повинен видалити непотрібні подяки тощо. По-друге, ти не повинен редагувати таке припущення, особливо якщо ОП все ще активний і ти можеш просто прокоментувати - хоча це, ймовірно, буде правда в цьому випадку ... @ rat Просто для уточнення, ти мав на увазі несподіванку?
— Тобіас Кіенцлер

Якщо ви не шукаєте чисто підхідного Java-підходу, можливо, побудова мосту JNI (наприклад, Tess4J ) має сенс. Я відчуваю, що бібліотеки OCR краще представлені у світі C ++ (OCRAD, GOCR, клинопис - дивіться всі тут ).
— dma_k

@rat - Ви праві - Asprise OCR SDK для Java - це не чиста Java-програма. Насправді, поза кадром, нативний код використовується як OCR - це дуже дорого обчислюваний процес.
— Підтримка Asprise

Відповіді:


81

Рекомендую спробувати проект Java OCR на sourceforge.net. Я спочатку його розробив, і у мене є публікація в ньому .

Оскільки я поставив це на sourceforge, його функціональність була значно розширена та вдосконалена завдяки великій роботі дослідників / розробників-добровольців.

Спробуйте, і якщо вам це не сподобається, ви завжди можете покращити його!


18
@Ron Я також подивився на проект. Я не знайшов демонстрацію, і графічний інтерфейс робить різні графічні операції, але немає вказівок, як активувати фактичне розпізнавання символів.
— Джеймс П.

1
@Ron, коли я переходжу за посиланням на ваш блог, тоді я бачу порожню сторінку.
— неоней

3
@Ron, де я можу отримати документацію або додатковий блог чи підручник.
— альцисет

1
як імпортувати java ocr в затемненні?
— Файсал Ашраф

2
Привіт, чи є підручники для цього?
— Криниця

10

Ми протестували декілька двигунів OCR з Java, такі як Tesseract, Asprise, Abbyy тощо. У нашому аналізі Еббі дав найкращі результати.


1
Реалізації Java API або Java ..?
— Ewoks

Ні, але є версія командного рядка, з якою ви можете спілкуватися, використовуючи ProcessBuilder.
— Аарон Дігулла

1
Ні Тессеракт, ні Еббі не базуються на Java. Вони просто мають API для Java.
— krispy

10

Якщо ви шукаєте дуже розширений варіант або маєте певний проблемний домен, ви можете розглянути можливість власного прокручування за допомогою об'єктно-орієнтованого нейронного двигуна Java . Ще одна довідка JOONE .

Я використовував його успішно в особистий проект , щоб визначити лист від зображення , наприклад, це , ви можете знайти все вихідні для компонента OCR мого програми на GitHub, тут .


1
О, дякую за приклад. Я завантажив його і планую адаптувати його під власні потреби!
— Amanda S

Чи можете ви показати мені, як компілювати?
— RadijatoR

Боюся, проект більше не підтримується @RadijatoR, тому я не можу запропонувати жодних порад.
— davetapley

4
Більшість посилань мертві.
— Ерік

5

Існує безліч бібліотек OCR. Однак мій досвід полягає в тому, що основні комерційні реалізації, ABBYY, Omnipage та ReadIris, набагато перевершують відкриті чи інші незначні реалізації. Ці комерційні бібліотеки в основному не розроблені для роботи з Java, хоча, звичайно, це можливо.

Звичайно, якщо ваш інтерес полягає в вивченні коду, реалізація з відкритим кодом зробить свою справу.


3

Щойно знайшов цей (не знаю цього, не перевірений, перевірити себе)

Ron Cemer Java OCR


Оскільки вам це потрібно лише для цікавості, ви можете заглянути в джерело цього аплету.

Це робить OCR рукописних символів з нейронною мережею

Java OCR: Розпізнавання рукописного тексту

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.