Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

I have always found OCR technology to be behind on open source systems. I've also watched the Ocropus project since its infancy. I've tried what I've heard is the best OCR engine available for Linux, Tesseract, and have found it woefully lacking for business documents. Are there any other more promising OCR implementations? What about the even more hopeful goal for interpreting handwriting? What is possible on *nix systems in this field?

share|improve this question
add comment

4 Answers 4

I found a similar question over on StackOverflow and the Asprise OCR SDK, one of the linked commercial products, boasts a Linux version.

share|improve this answer
add comment

Well, depends what you mean by 'business documents'.

Cuneiform

I tested cuneiform with some business letters and I was quite astonished by its low error rate (regarding mis-recognized characters or words).

For my use case I only need the raw text for indexing purposes - I am not interested in text to layout element mapping or something like that.

And the documents are just one column.

Unfortunately, cuneiform currently (as of 1.1) has some problems:

You can disable the layout algorithm like this:

$ cuneiform --singlecolumn -l ger -f text -o foo.txt imgfile

(-l specifies the language of the source document)

Tesseract

Can't really test it because it directly segfaults (using Ubuntu 11.10 packages - i.e. Tesseract 2.04):

$ tesseract image-0001.tif foo -l deu
Tesseract Open Source OCR Engine
index < len:Error:Assert failed:in file ../ccstruct/rejctmap.h, line 240
zsh: segmentation fault

Hardware

Sane has very good support for a lot of automated document feed (ADF) scanners, e.g. for Avision and Fujitsu ones.

Included with Sane is the scanadf command line program which you can use to build scripted scan pipelines.

share|improve this answer
    
I tried Cuneiform. It works well if you need to recognize scanned image (not photos). I used Yagf as a GUI. –  Sergei Oct 13 '12 at 9:58
add comment

... OCR is more than "only character recognition". Image handling, preprocessing - page/layout analysis to find the texts, images, tables or barcodes. For the recognition, you have to deal with different fonts, sizes and languages. This is important because to get good results you have to use dictionaries and language definitions. Finally people expect more export options than text (e.g., XML, RTF, or searchable PDF). There are some commercial options for SDKs, but they are not cheap and for free.

Recently I found a CLI OCR for Linux from ABBYY. There is a free 100 page trial.

share|improve this answer
add comment

If you have a budget, I strongly recommend ABBYY FineReader Engine CLI for Linux. Our company has been using it in our web-application for a year and we plan to renew the license. Very good recognition quality, command-line interface, recognition in many languages.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.