awesome-ocr
Links to awesome OCR projects
https://github.com/kba/awesome-ocr
Last synced: 13 days ago
JSON representation
-
Software
-
OCR as a Service
- tesseract-web-service - An implementation of RESTful web service for tesseract-OCR using tornado.
- docker-ocropy - A Docker container for running the [ocropy OCR system](htps://github.com/tmbdev/ocropy).
- nidaba - An expandable and scalable OCR pipeline
- gamera - A meta-framework for building document processing applications, e.g. OCR
- ocr-tools - Project to provide CLI and web service interfaces to common OCR engines
- ocrad-docker - Run the [ocrad](http://www.gnu.org/software/ocrad/) OCR engine in a docker container
- kraken-docker - Run the [kraken](https://github.com/mittagessen/kraken) OCR engine in a docker container
- OCR4all - Provides OCR services through web applications. Included Projects: [LAREX](https://github.com/chreul/LAREX), [OCRopus](https://github.com/tmbdev/ocropy), [calamari](https://github.com/ChWick/calamari) and [nashi](https://github.com/andbue/nashi).
- ABBYY Cloud OCR SDK Code samples - Code samples for using the proprietary commercial ABBYY OCR API.
- gamera - A meta-framework for building document processing applications, e.g. OCR
- Konfuzio - Free Online OCR up to 2.000 pages per month and OCR API by [@atraining], see https://youtu.be/NZKUrKyFVA8 (code is not open)
-
OCR CLI
- Ocrocis - Project manager interface for Ocropy, see also [external project homepage](http://cistern.cis.lmu.de/ocrocis/)
- Pdf2PdfOCR - A tool to OCR a PDF (or supported images) and add a text "layer" (a "pdf sandwich") in the original file making it a searchable PDF. GUI included. Tesseract and cuneiform supported.
- tesseract-recognize - Tesseract-based tool that outputs result in Page XML format ([docker image](https://hub.docker.com/r/mauvilsa/tesseract-recognize)).
- OCRmyPDF - OCRmyPDF adds an OCR text layer to scanned PDF files, allowing them to be searched
-
OCR engines
- gocr - OCR engine under the GNU Public License led by Joerg Schulenburg.
- Ocrad - The GNU OCR. `GPL`
- RWTH-OCR - The RWTH Aachen University Optical Character Recognition System
- tesseract - The definitive Open Source OCR engine `Apache 2.0`
- EasyOCR - OCR engine built on PyTorch by JaidedAI, `Apache 2.0`
- ocropus 0.4 - Older v0.4 state of Ocropus, with tesseract 2.04 and iulib, C++
- kraken - Ocropus fork with sane defaults
- ocular - Machine-learning OCR for historic documents
- attention-ocr - OCR engine using visual attention mechanisms
- Calamari - OCR Engine based on OCRopy and Kraken
- doctr - A seamless & high-performing OCR library powered by Deep Learning
- SwiftOCR - fast and simple OCR library written in Swift
- simple-ocr-opencv - ocr-opencv) - A simple pythonic OCR engine using opencv and numpy
- ocropus - OCR engine based on LSTM, `Apache 2.0`
-
OCR evaluation
- ISRI OCR Evaluation Tools - ocr-evaluation-tools/blob/HEAD/user-guide.pdf)
- ngram-ocr-eval - Brute and simple OCR evaluation using ngrams
- ancientgreekocr-evaluation-tools - further development by [@nickjwhite](https://github.com/nickjwhite) (2013, 2014)
- ocrevalUAtion - Cross-format evaluation, CLI and GUI
- quack - Quality-Assurance-tool for scans with corresponding ALTO-files
- ISRI OCR Evaluation Tools - ocr-evaluation-tools/blob/HEAD/user-guide.pdf)
- isri-ocr-evaluation-tools - further development by [@eddieantonio](https://github.com/eddieantonio) (2015, 2016)
-
OCR file formats
- abby2hocr.xslt XSLT script
- TEI SIG on Libraries - Best Practices for TEI in Libraries
- GDZ - METS/TEI-based GDZ document format
- PAGE-XML Schema - XML schema of the PAGE XML format along with documentation and examples
- omni:us Pages Format (OPF) - XML schema very similar to PAGE XML that has some additional features.
- hocr-spec - hOCR 1.2 specification
- hocr-parser - hOCR Specification Python Parser
- hOCRTools - hOCR to ALTO conversion XSLT
- ALTO XML Schema - XML Schema and development of the ALTO XML format
- ALTO XML Documentation - Documentation and use cases for ALTO
- alto-tools - Various tools to work with ALTO files, Python
- AbbyyToAlto - PHP script converting from Abbyy 6 to ALTO XML
- TEI-OCR - TEI customization for OCR generated layout and content information
- py-pagexml - Python library for handling PAGE XML and OPF files.
- ocr-conversion-scripts
- hocr-tools - Tools for doing various useful things with hOCR files, `Apache 2.0`
- ocr-transform - CLI tool to convert between hOCR and ALTO, `MIT`
-
OCR GUI
- VietOCR - A Java/.NET GUI frontend for Tesseract OCR engine, including [jTessBoxEditor](http://vietocr.sourceforge.net/training.html) a graphical Tesseract [box data](https://github.com/tesseract-ocr/tesseract/wiki/Make-Box-Files) editor
- OCRFeeder - GTK graphical user interface that allows the users to correct characters or bounding boxes, ODT export and more.
- moz-hocr-editor - Firefox Addon for editing hOCR files **Discontinued**
- qt-box-editor - QT4 editor of tesseract-ocr box files.
- ocr-gt-tools - Client-Server application for editing OCR ground truth.
- Paperwork - Using scanners and OCR to grep paper documents the easy way.
- gImageReader - gImageReader is a simple Gtk/Qt front-end to tesseract-ocr.
- PoCoTo - Fast interactive batch corrections of complete OCR error series in OCR'ed historical documents.
- PRImA PAGE Viewer - Java based viewer for PAGE XML files (layout + text content). Also supports ALTO XML, FineReader XML, and HOCR.
- archiscribe - Web application for transcribing OCR ground truth from Archive.org. Deployed instance available at https://archiscribe.jbaiter.de/, results are available in [@jbaiter/archiscribe-corpus](https://github.com/jbaiter/archiscribe-corpus).
- nw-page-editor - Simple app for visual editing of Page XML files. Provides desktop and [server docker-based](https://hub.docker.com/r/mauvilsa/nw-page-editor-web) versions.
- Paperless - Scan, index, and archive all of your paper documents.
- VietOCR - A Java/.NET GUI frontend for Tesseract OCR engine, including [jTessBoxEditor](http://vietocr.sourceforge.net/training.html) a graphical Tesseract [box data](https://github.com/tesseract-ocr/tesseract/wiki/Make-Box-Files) editor
- LAREX - A semi-automatic open-source tool for Layout Analysis and Region EXtraction on early printed books.
-
OCR libraries by programming language
- leptess - Productive and safe Rust bindings/wrappers for tesseract and leptonica.
- tesseract-ocr - A Crystal wrapper for tesseract-ocr.
- tesseract_ocr - Elixir library wrapping the tesseract executable.
- gosseract - Golang OCR library, wrapping Tesseract-ocr.
- Tess4J - Java Native Access bindings to Tesseract.
- tess-two - Tools for compiling Tesseract on Android and Java API.
- tesseract for .net - A .Net wrapper for tesseract-ocr.
- TTesseractOCR4 - Object Pascal binding for tesseract-ocr 4.x.
- Tesseract OCR for PHP - Tesseract PHP bindings.
- pytesseract - A Python wrapper for Google Tesseract.
- ocrodjvu - A library and standalone tool for doing OCR on DjVu documents, wrapping Cuneiform, gocr, ocrad, ocropus and tesseract
- tesserocr - A Python wrapper for the tesseract-ocr API
- ocracy - pure javascript lstm rnn implementation based on ocropus
- gocr.js - Javascript port (emscripten) of gocr
- ocrad.js - Javascript port (emscripten) of ocrad
- tesseract.js - Javascript port (emscripten) of Tesseract
- node-tesseract-ocr - A simple wrapper for the Tesseract OCR package.
- node-tesseract-native - C++ module for node providing OCR with tesseract and leptonica.
- rtesseract - Ruby library wrapping the tesseract and imagemagick executables.
- ruby-tesseract - Native Tesseract bindings for Ruby MRI and JRuby
- ocr_space - API wrapper for free ocr service ocr.space. Includes CLI
- tesseract.rs - Rust bindings for tesseract OCR.
- tesseract - R bindings for tesseract OCR.
- Tesseract OCR iOS - Swift and Objective-C wrapper for Tesseract OCR.
- ocrodjvu - A library and standalone tool for doing OCR on DjVu documents, wrapping Cuneiform, gocr, ocrad, ocropus and tesseract
-
OCR Preprocessing
- NoiseRemove.java in MathOCR - Java implementation of Adaptive degraded document image binarization by B. Gatos , I. Pratikakis, S.J. Perantonis
- binarize.c in ZBar - C implementations of two binarization algorithms, based on Sauvola
- Whiteboard Picture Cleaner - Shell one-liner/script to clean up and beautify photos of whiteboards
- textcleaner - Processes a scanned document of text to clean the text background
- localcontrast - Fast O(1) local contrast optimization
- typeface-corpus - A repository for typefaces to train Tesseract and OCRopus for natural history collections and digital humanities.
- binarizewolfjolion - Comparison of binarization algorithms. [Blog post](http://zp-j.github.io/2013/10/04/document-binarization/)
- `crop_morphology.py` in oldnyc - Cropping a page to just the text block
- textcleaner - Processes a scanned document of text to clean the text background
- binarizewolfjolion - Comparison of binarization algorithms. [Blog post](http://zp-j.github.io/2013/10/04/document-binarization/)
-
OCR training tools
- glyph-miner - A system for extracting glyphs from early typeset prints
- ocrodeg - Document image degradation for OCR data augmentation
-
Older and possibly abandoned OCR engines
- Cuneiform - CuneiForm OCR was developed by Cognitive Technologies
- Eye - an experimental Java OCR (image-to-text) application
- kognition - An omnifont OCR software for KDE
- OCRchie - Modular Optical Character Recognition Software
- ocre - o.c.r. easy
- xplab - A GTK 2 tool for pattern matching
- hebOCR - Hebrew character recognition library (previously named hocr, see [Wikipedia article](https://de.wikipedia.org/wiki/HebOCR)) `GPL`
- Clara OCR - Open source OCR in C `GPL`
- xplab - A GTK 2 tool for pattern matching
- Clara OCR - Open source OCR in C `GPL`
-
Programming Languages
Categories
Sub Categories
Academic articles
85
Blog Posts and Tutorials
60
Ground Truth
38
OCR libraries by programming language
25
OCR file formats
17
OCR engines
14
OCR GUI
14
OCR as a Service
14
OCR-related publication and link lists
11
Older and possibly abandoned OCR engines
10
OCR Preprocessing
10
OCR evaluation
7
OCR CLI
4
OCR Showcases
3
OCR training tools
2
Keywords
ocr
19
tesseract
12
tesseract-ocr
8
optical-character-recognition
8
python
4
hocr
3
alto-xml
3
text-recognition
3
ruby
3
machine-learning
3
deep-learning
3
docker-image
3
pagexml
3
text-detection
2
image-to-text
2
pdf
2
cnn
2
gtk
2
alto
2
document-recognition
2
pytorch
2
scanner
2
lstm
2
ocr-recognition
1
tensorflow
1
ml
1
seq2seq
1
tensorflow2
1
text-detection-recognition
1
alto-xml-schema
1
schema
1
digital-library
1
annotation-processing
1
document-representation
1
javascript
1
webassembly
1
crnn
1
data-mining
1
easyocr
1
image-processing
1
information-retrieval
1
scene-text
1
scene-text-recognition
1
go
1
ocr-server
1
ocr-engine
1
handwritten-text-recognition
1
htr
1
layout-analysis
1
neural-networks
1