Is there a tool that can recognise text in a scanned document (PNG, JPG) and convert it into a regular text file (DOC, TXT)?
It should
- Work on Ubuntu and Mac OS X
- Be free
- Work with most common image types
Software Recommendations Stack Exchange is a question and answer site for people seeking specific software recommendations. It only takes a minute to sign up.
Sign up to join this communityI have successfully used Tesseract for Optical Character Recognition, on Ubuntu.
It is free, open source and maintained by Google.
While not bad with Latin characters and numbers, it struggles with Japanese characters for instance. You might have to first feed it training data depending on what you want to get recognized.
It can read from a lot of different image formats.
apt-get
etc)?
apt-cache search tesseract
:)
I use OCRfeeder for this. It is free, open-source and runs on Linux (unfortunately there is no pre-compiled executable for OSX, though you might be able to build it from source). By default it runs on the Tesseract engine, although this can be changed.
Screenshots (click them for larger pictures)
I don't have a lot of experience with anything other than plain English, but it works well for me and can read most image formats. It can also open a read PDFs as well.
.doc
when needed), plain text (.txt
), and moreI use Microsoft OneNote as OCR tool. On Right click against an image It can copy the entire text in images and It also has the capability to search text with in image. It is free and accurate and runs on windows and support almost all image formats.
You can copy the text inside and paste it into a text document.
I am not sure if it works in Ubuntu or not through Wine, as Microsoft Office is now available for Mac OS, OneNote will work on it.
Bonus point is that it supports multiple languages :) English, French, Spanish also
There are few popular OCR command-line tools you can use (I'm not sure if they've GUI):
Open-source character recognition. It converts scanned images of text back to text files. GOCR can be used with different front-ends, which makes it very easy to port to different OSes and architectures. It can open many different image formats, and its quality have been improving in a daily basis.
OCRopus™ (FAQ) (written in Python, NumPy, and SciPy)
OCR system focusing on the use of large scale machine learning for addressing problems in document analysis, featuring pluggable layout analysis, pluggable character recognition, statistical natural language modeling, and multi-lingual capabilities.
The OCRopus engine is based on two research projects: a high-performance handwriting recognizer developed in the mid-90's and deployed by the US Census bureau, and novel high-performance layout analysis methods.
OCRopus is development is sponsored by Google and is initially intended for high-throughput, high-volume document conversion efforts. We expect that it will also be an excellent OCR system for many other applications.
Tessnet2 (Open source, OCR, Tesseract, .NET, DOTNET, C#, VB.NET, C++/CLI)
Tesseract is a C++ open source OCR engine. Tessnet2 is .NET assembly that expose very simple methods to do OCR. Tessnet2 is under Apache 2 license (like tesseract), meaning you can use it like you want, included in commercial products.
Few others: ABBYY CLI OCR for Linux, Asprise OCR
For more complete list, check: List of optical character recognition software at Wikipedia
See also: wanghaisheng/awesome-ocr
- A curated list of promising OCR resources at GitHub.
Related thread: What's the best, simplest OCR solution?
Screenotate is an app for macOS and Windows.
It uses Google's well-developed Tesseract OCR engine.
Each screenshot is a self-contained HTML file.
Our dhurvaa's OCR Tool transforms any image, scanned document, or printed PDF to editable text:
https://dhurvaa.com/online_ocr_tool
It works in seconds.