Repolode
tesseract-ocr

tesseract-ocr/tesseract

An open-source OCR engine (libtesseract) and command-line tool that extracts text from images, with LSTM-based recognition and 100+ languages.

Open-source alternative to:Adobe Acrobat OCRABBYY FineReader

Stars
77,087
Forks
10,852
Open issues
494
Last commit
18 hours ago

What is it?

Tesseract is an optical character recognition engine that reads text from images. It ships as the libtesseract library and a command-line program named tesseract, so it can be used directly from a shell or embedded in another application through its C or C++ API.

The current engine is built on an LSTM neural network focused on recognizing text lines, and it still supports the legacy character-pattern engine from Tesseract 3 through an engine mode option. Recognition works with UTF-8 text and with many languages out of the box, and models can be trained for additional languages. Input formats include PNG, JPEG and TIFF, and output can be plain text, hOCR, PDF (including invisible-text-only PDF), TSV, ALTO or PAGE.

The project does not include a graphical interface. Image quality has a large effect on results, so preprocessing the input is often necessary. Bindings for other programming languages are maintained separately.

Key features

  • 01Neural network (LSTM) line recognition with legacy engine compatibility
  • 02Recognizes more than 100 languages with UTF-8 output
  • 03Accepts PNG, JPEG and TIFF input images
  • 04Outputs plain text, hOCR, searchable PDF, TSV, ALTO and PAGE
  • 05Provides C and C++ APIs through libtesseract
  • 06Supports training custom language models

Use cases

  • Extracting text from scanned documents into searchable PDFs
  • Digitizing printed books or forms in a batch pipeline
  • Adding OCR to a backend service via the C or C++ API
  • Recognizing text in photos of signs or labels from the command line

Quick start

  1. 1

    Install Tesseract from a pre-built binary package (see the Installation docs linked in the README)

  2. 2

    Or build Tesseract from source (check that your compiler is supported first)

  3. 3

    Run OCR on an image with the basic usage: tesseract imagename outputbase [-l lang]

Things to know

  • The project does not include a GUI application; you need a third-party tool for one.
  • Recognizing languages requires separate traineddata files.
  • OCR accuracy often depends on improving the quality of the input image.

Topics

FAQ

What is tesseract?
An open-source OCR engine (libtesseract) and command-line tool that extracts text from images, with LSTM-based recognition and 100+ languages. Tesseract is an optical character recognition engine that reads text from images. It ships as the libtesseract library and a command-line program named tesseract, so it can be used directly from a shell or embedded in another application through its C or C++ API.
Is tesseract free to use? What license does it have?
tesseract is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
Is tesseract still maintained?
Actively maintained. The last commit to tesseract was on Oct 20, 2026.
What can I use tesseract for?
Extracting text from scanned documents into searchable PDFs Digitizing printed books or forms in a batch pipeline Adding OCR to a backend service via the C or C++ API Recognizing text in photos of signs or labels from the command line
How do I install tesseract?
Install Tesseract from a pre-built binary package (see the Installation docs linked in the README) Or build Tesseract from source (check that your compiler is supported first) Run OCR on an image with the basic usage: tesseract imagename outputbase [-l lang]
Where can I get tesseract?
The source code and installation instructions are on GitHub: https://github.com/tesseract-ocr/tesseract

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects