Awesome OCR

Deskewing and Dewarping

Segmentation

Line Segmentation

Character Segmentation

Word Segmentation

Document Segmentation

Form Segmentation

Handwritten

Tables

Language detection

  • lingua - The most accurate natural language detection library for Java and other JVM languages, suitable for long and short text alike
  • langdetect
  • whatthelang - Lightning Fast Language Prediction rocket
  • wiki-lang-detect

Text detection and localization

  • crpn
  • PAN-PSEnet
  • FOTS - An Implementation of the FOTS: Fast Oriented Text Spotting with a Unified Network.
  • Scene-Text-Detection-with-SPECNET - Repository for Scene Text Detection with Supervised Pyramid Context Network with tensorflow.
  • Character-Region-Awareness-for-Text-Detection
  • Real-time-Scene-Text-Detection-and-Recognition-System - End-to-end pipeline for real-time scene text detection and recognition.
  • ocr_attention - Robust Scene Text Recognition with Automatic Rectification.
  • masktextspotter.caffee2 - The code of "Mask TextSpotter: An End-to-End Trainable Neural Network for Spotting Text with Arbitrary Shapes".
  • InceptText-Tensorflow - An Implementation of the alogrithm in paper IncepText: A New Inception-Text Module with Deformable PSROI Pooling for Multi-Oriented Scene Text Detection.
  • textspotter - An End-to-End TextSpotter with Explicit Alignment and Attention
  • RRD - RRD: Rotation-Sensitive Regression for Oriented Scene Text Detection.
  • crpn - Corner-based Region Proposal Network.
  • SSTDNet - Implement 'Single Shot Text Detector with Regional Attention, ICCV 2017 Spotlight'.
  • R2CNN - caffe re-implementation of R2CNN: Rotational Region CNN for Orientation Robust Scene Text Detection.
  • RRPN - Source code of RRPN ---- Arbitrary-Oriented Scene Text Detection via Rotation Proposals
  • Tensorflow_SceneText_Oriented_Box_Predictor - This project modify tensorflow object detection api code to predict oriented bounding boxes. It can be used for scene text detection.
  • DeepSceneTextReader - This is a c++ project deploying a deep scene text reading pipeline with tensorflow. It reads text from natural scene images. It uses frozen tensorflow graphs. The detector detect scene text locations. The recognizer reads word from each detected bounding box.
  • DeRPN - A novel region proposal network for more general object detection ( including scene text detection ).
  • Bartzi/see - SEE: Towards Semi-Supervised End-to-End Scene Text Recognition
  • Bartzi/stn-ocr - Code for the paper STN-OCR: A single Neural Network for Text Detection and Text Recognition
  • beacandler/R2CNN - caffe re-implementation of R2CNN: Rotational Region CNN for Orientation Robust Scene Text Detection
  • HsiehYiChia/Scene-text-recognition - Scene text detection and recognition based on Extremal Region(ER)
  • tensorflow_PSENet - This is a tensorflow re-implementation of PSENet: Shape Robust Text Detection with Progressive Scale Expansion Network.
  • R2CNN_Faster-RCNN_Tensorflow - Rotational region detection based on Faster-RCNN.
  • FOTS - An Implementation of the FOTS: Fast Oriented Text Spotting with a Unified Network.
  • corner - Multi-Oriented Scene Text Detection via Corner Localization and Region Segmentation
  • Corner_Segmentation_TextDetection - Multi-Oriented Scene Text Detection via Corner Localization and Region Segmentation.
  • TextSnake.pytorch - A PyTorch implementation of ECCV2018 Paper: TextSnake: A Flexible Representation for Detecting Text of Arbitrary Shapes
  • AON - Implementation for CVPR 2018 text recognition Paper by Tensorflow: "AON: Towards Arbitrarily-Oriented Text Recognition"
  • pixel_link - Implementation of our paper 'PixelLink: Detecting Scene Text via Instance Segmentation' in AAAI2018
  • seglink - An Implementation of the seglink alogrithm in paper Detecting Oriented Text in Natural Images by Linking Segments (=> pixe_link)
  • SSTD - Single Shot Text Detector with Regional Attention
  • MORAN_v2 - MORAN: A Multi-Object Rectified Attention Network for Scene Text Recognition
  • Curve-Text-Detector - This repository provides train&test code, dataset, det.&rec. annotation, evaluation script, annotation tool, and ranking table.
  • tensorflow_PSENet - This is a tensorflow re-implementation of PSENet: Shape Robust Text Detection with Progressive Scale Expansion Network
  • HCIILAB/DeRPN - A novel region proposal network for more general object detection ( including scene text detection ).
  • TextField - TextField: Learning A Deep Direction Field for Irregular Scene Text Detection (TIP 2019)
  • tensorflow-TextMountain - TextMountain: Accurate Scene Text Detection via Instance Segmentation
  • Bartzi/see - Code for the AAAI 2018 publication "SEE: Towards Semi-Supervised End-to-End Scene Text Recognition"
  • bgshih/aster - Recognizing cropped text in natural images.

CTPN

EAST

CRAFT

TextBoxes

PSENet

  • tensorflow_PSENet - PSENet: Shape Robust Text Detection with Progressive Scale Expansion Network
  • PSENet - Shape Robust Text Detection with Progressive Scale Expansion Network.

Font detection

  • typefont - The first open-source library that detects the font of a text in a image.

Optical Character Recognition Engines and Frameworks

Awesome lists

Proprietary Engines

File formats and tools

  • nw-page-editor - Simple app for visual editing of Page XML files
  • hocr
  • alto
  • PageXML
  • ocr-fileformat - Validate and transform various OCR file formats
  • hocr-tools - Tools for manipulating and evaluating the hOCR format for representing multi-lingual OCR results by embedding them into HTML.

Datasets

Data augmentation and Synthetic data generation

Pre OCR Processing

Post OCR Correction

Benchmarks

misc