awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com

OCR Text Extraction Tools

Ranking updated Jun 30, 2026

For an ocr tool for extracting text, the first results are tesseract-ocr/tesseract (Tesseract is a full-featured OCR engine with deep learning, multi-language support, layout analysis, a CLI, and model training capabilities—exactly matching the request for an open-source OCR tool), jbarlow83/ocrmypdf and breezedeus/pix2text. madmaze/pytesseract and rednote-hilab/dots.ocr round out the shortlist. Compare the match explanations and check the project documentation against your requirements.

Open-source software libraries and applications for converting images and scanned documents into machine-readable text.

OCR Text Extraction Tools

Find the best repos with AI.We'll search the best matching repositories with AI.
  • tesseract-ocr/tesseracttesseract-ocr avatar

    tesseract-ocr/tesseract

    74,751View on GitHub↗

    Tesseract is a neural network-based optical character recognition engine designed to convert scanned images and digital documents into machine-readable, searchable text. It functions as both a command-line utility for automating large-scale digitization workflows and a cross-platform library that can be embedded into desktop, mobile, or server-side applications. By utilizing long short-term memory networks, the engine provides robust text extraction across more than one hundred languages and dozens of scripts. The project distinguishes itself through a sophisticated document layout analysis f

    Tesseract is a full-featured OCR engine with deep learning, multi-language support, layout analysis, a CLI, and model training capabilities—exactly matching the request for an open-source OCR tool.

    C++Document SegmentationOCR Language SupportTable Detection Algorithms
    View on GitHub↗74,751
  • jbarlow83/ocrmypdfjbarlow83 avatar

    jbarlow83/OCRmyPDF

    33,901View on GitHub↗

    OCRmyPDF is a tool for converting image-based PDF files into machine-readable documents by adding a searchable text layer via optical character recognition. It functions as a multi-language processor capable of detecting and extracting text in over 100 different languages using linguistic data packs. The software includes a PDF image optimizer to remove image artifacts and correct page skew to improve recognition accuracy. It also provides a converter to transform scanned documents into the PDF/A standard for long-term digital archiving. The system manages PDF optimization by compressing emb

    OCRmyPDF is a dedicated OCR tool that adds searchable text to image-based PDFs using Tesseract, supporting over 100 languages with image preprocessing and PDF/A output—making it a solid match for extracting text from PDFs and images, though it lacks its own deep learning models and trainable customization.

    PythonOCR Language SupportImage Preprocessing UtilitiesMultilingual Text Recognition
    View on GitHub↗33,901
  • breezedeus/pix2textbreezedeus avatar

    breezedeus/Pix2Text

    3,012View on GitHub↗

    Pix2Text is an optical character recognition system and document conversion tool designed to transform images and PDFs into Markdown. It functions as a multilingual OCR engine supporting over 80 languages, a LaTeX formula recognizer for mathematical notations, and a parser integrated with vision language models. The project utilizes a hybrid pipeline to separate plain text from mathematical formulas and tabular structures within a single pass. It converts recognized formulas into LaTeX expressions and transforms detected tables and layouts into structured Markdown formatting. The system incl

    Pix2Text is a multilingual OCR engine and document conversion tool that directly reads images and PDFs, separates text, formulas, and tables via layout analysis, and outputs structured Markdown — matching the core OCR task and most requested features such as multi-language support, deep learning, and structure detection.

    Jupyter NotebookMultilingual OCR SystemsMultilingual Text Recognition
    View on GitHub↗3,012
  • madmaze/pytesseractmadmaze avatar

    madmaze/pytesseract

    6,361View on GitHub↗

    Pytesseract is a Python library that wraps Google's Tesseract OCR engine to extract text from images. It provides a straightforward interface for optical character recognition, supporting multiple languages and a variety of output formats. The library distinguishes itself by offering fine-grained control over the OCR process through custom Tesseract configuration options, including engine mode and page segmentation settings. It can detect image orientation and script type, recognize text in multiple languages, and return detailed metadata such as per-character confidence scores and bounding b

    Pytesseract is a Python library that wraps Tesseract to extract text from images, offering multi‑language support, page‑segmentation based layout analysis, and output formats like text and searchable PDF, making it a solid OCR tool – though it relies on Tesseract for deep‑learning and does not expose custom model training directly.

    PythonMulti-Language OCR RecognizersOCR Data ExportsSearchable PDF Generation
    View on GitHub↗6,361
  • rednote-hilab/dots.ocrrednote-hilab avatar

    rednote-hilab/dots.ocr

    7,695View on GitHub↗

    dots.ocr is a suite of software utilities for document layout analysis, multilingual optical character recognition, and scene text digitization. It functions as an engine for extracting digital text and structured layout data from images and PDFs across various human scripts. The project includes a specialized transformer for converting charts, diagrams, and chemical formulas from raster images into scalable vector graphics. It also provides a pipeline to transform extracted text and structural layout from documents and web screenshots into formatted Markdown files. The system covers capabil

    dots.ocr is a multilingual OCR engine with layout analysis, deep-learning-based text recognition, and support for PDF and image inputs, making it a comprehensive fit for extracting machine-readable text from documents.

    PythonMultilingual OCR SystemsMultilingual Text Recognition
    View on GitHub↗7,695
  • ub-mannheim/tesseractUB-Mannheim avatar

    UB-Mannheim/tesseract

    4,111View on GitHub↗

    Tesseract is an optical character recognition engine and tool designed to convert printed or handwritten text from images into machine-readable digital text. It functions as a multilingual text extractor and a document digitization pipeline that transforms scanned images into structured digital formats. The project includes a framework for training custom scripts and language-specific models, allowing the engine to recognize new languages or unique fonts through custom training data. Its capabilities cover automated text extraction, digital archive digitization, and the export of recognized

    Tesseract is the go-to open-source OCR engine with multi-language support, LSTM-based deep learning, a training framework, layout analysis, a CLI, and output to text and searchable PDF—matching every aspect of your search.

    C++Multilingual Text Recognition
    View on GitHub↗4,111
  • paddlepaddle/paddleocrPaddlePaddle avatar

    PaddlePaddle/PaddleOCR

    82,412View on GitHub↗

    PaddleOCR is a comprehensive optical character recognition framework designed for detecting and transcribing text from images and documents into structured, machine-readable formats. It provides a modular computer vision pipeline that decouples image preprocessing, text detection, and character recognition into independent, configurable stages. This architecture supports automated document digitization and multilingual text recognition, capable of identifying text in over one hundred languages across diverse environments ranging from scanned documents to industrial scenes. The framework disti

    PaddleOCR is a comprehensive deep-learning-based OCR framework with modular text detection, recognition, and preprocessing stages, supports over 100 languages, document parsing, and PDF input, covering exactly the multi-step OCR pipeline and output formats this search is after.

    PythonMultilingual Text Recognition
    View on GitHub↗82,412
  • rapidai/rapidocrRapidAI avatar

    RapidAI/RapidOCR

    5,968View on GitHub↗

    RapidOCR is an offline deep-learning OCR engine that detects and recognizes text in images using ONNX Runtime, operating entirely without an internet connection. It provides a unified inference pipeline that runs across multiple platforms including Windows, Linux, macOS, Android, and Raspberry Pi, with programming language bindings for Python, C++, Java, and C#. The engine separates text detection and recognition into independent modules that can be swapped or fine-tuned individually, and abstracts the inference backend behind a unified interface allowing seamless switching between ONNX Runti

    RapidOCR is a deep-learning, offline OCR engine with modular detection and recognition, multi-platform support, and model fine-tuning capabilities, matching the core need for a trainable OCR tool with cross-language potential.

    PythonOCR Language Support
    View on GitHub↗5,968
  • jaidedai/easyocrJaidedAI avatar

    JaidedAI/EasyOCR

    29,615View on GitHub↗

    EasyOCR is a deep learning-based computer vision library designed to perform optical character recognition on images and video frames. It functions as a comprehensive pipeline that automates the transformation of visual text into machine-readable strings, enabling the digitization of physical documents, forms, and receipts into searchable data. The engine distinguishes itself through a multi-stage processing workflow that combines convolutional neural networks for spatial feature extraction with sequence-based decoding mechanisms. This architecture allows the system to identify and interpret

    EasyOCR is a deep-learning-based OCR library that supports many languages and provides text detection and recognition from images, directly fitting your search for an OCR engine, though it lacks built-in layout analysis and native PDF input.

    PythonCharacter Recognition ModelsMultilingual OCR SystemsSequence Decoding Models
    View on GitHub↗29,615
  • mindee/doctrmindee avatar

    mindee/doctr

    6,149View on GitHub↗

    DocTR is a deep learning OCR library built on PyTorch that detects and transcribes text in document images using a two-stage detection-recognition pipeline. It provides a complete framework for building and deploying OCR pipelines with pretrained models available through the Hugging Face Hub, and supports exporting trained models to ONNX format for cross-runtime deployment. The library offers end-to-end OCR pipelines that combine text detection and recognition to extract all text from document images or PDFs, with support for rotated page handling and varied text orientations. It includes cap

    mindee/doctr is a deep learning OCR library with a detection-recognition pipeline, pretrained models, and support for PDFs and images, making it a comprehensive fit for extracting text via OCR.

    PythonOCR LibrariesDocument Text Recognition ToolkitsEnd-to-End Pipelines
    View on GitHub↗6,149
  • getomni-ai/zeroxgetomni-ai avatar

    getomni-ai/zerox

    12,241View on GitHub↗

    Zerox is a multimodal document parser and OCR tool that uses vision models to convert PDF files and images into structured Markdown text. It functions as a visual layout extraction engine, leveraging large multimodal models to digitize documents while maintaining their original structural formatting. The system differentiates itself through the use of coordinate-based element mapping and multimodal layout analysis to identify structural elements like tables, charts, and headers. It utilizes rasterization to convert vector PDF pages into high-resolution bitmaps, ensuring consistent input for t

    Zerox is a multimodal OCR tool that uses vision models to extract structured Markdown from PDFs and images, squarely fitting the OCR engine category, though it focuses on layout-aware extraction rather than offering traditional OCR features like custom model training or multiple output formats.

    TypeScriptMultimodal Layout Analysis
    View on GitHub↗12,241
  • pymupdf/pymupdfpymupdf avatar

    pymupdf/PyMuPDF

    9,086View on GitHub↗

    PyMuPDF is a comprehensive PDF manipulation library and document analysis tool. It serves as a text extraction tool, OCR engine, and image converter, providing a programmatic interface to edit, merge, split, and optimize PDF and Office documents. The project distinguishes itself through high-performance capabilities, including the use of C-bindings for low-level manipulation and parallelized page processing to accelerate workloads. It provides specialized conversion paths, such as transforming PDF content into Markdown for retrieval-augmented generation and large language model pipelines. It

    PyMuPDF is a PDF manipulation library with integrated OCR via Tesseract, supporting multi-language text extraction, layout detection, and table extraction from PDF and images—fitting the search as an OCR engine, though it lacks a dedicated CLI and direct custom model training.

    PythonSearchable PDF GenerationPDF Libraries
    View on GitHub↗9,086
  • naptha/tesseract.jsnaptha avatar

    naptha/tesseract.js

    38,141View on GitHub↗

    Tesseract.js is a JavaScript library that provides optical character recognition capabilities directly within web browsers and Node.js environments. It functions as a client-side engine, enabling the conversion of images containing printed text into machine-readable strings without the need for external APIs or server-side infrastructure. The library distinguishes itself by running the original C++ optical character recognition engine within the browser through WebAssembly modules. To maintain interface responsiveness during intensive computation, it utilizes background threads for parallel p

    Tesseract.js is a JavaScript library that ports the industry-standard Tesseract OCR engine to browser and Node.js environments via WebAssembly, giving you multi-language text extraction from images and supporting common output formats—though it lacks a built-in CLI and its PDF support requires external conversion, making it a solid but not all-in-one choice for OCR integration.

    JavaScriptOptical Character Recognition LibrariesWeb-Based Text RecognitionWebAssembly
    View on GitHub↗38,141
  • hiroi-sora/umi-ocrhiroi-sora avatar

    hiroi-sora/Umi-OCR

    45,273View on GitHub↗

    Umi-OCR is an optical character recognition engine designed to convert visual text from images and documents into machine-readable character data. It functions as a local-first toolkit, processing all visual data directly on the host machine using embedded neural network models to maintain privacy and offline availability. The project distinguishes itself through its focus on automated document digitization and integrated barcode and QR code decoding. By utilizing a modular, Python-based orchestration layer, it enables users to transform static image files and multi-page documents into search

    Umi-OCR is a local-first OCR engine that uses embedded neural network models (via PaddleOCR) to extract text from images and documents, supporting multi-language recognition and a command-line interface, though it does not offer built-in layout analysis or custom model training.

    PythonOptical Character RecognitionLocal Inference EnginesDocument Analysis Tools
    View on GitHub↗45,273
  • opendatalab/mineruopendatalab avatar

    opendatalab/MinerU

    67,734View on GitHub↗

    MinerU is a document parsing pipeline designed to transform unstructured files into machine-readable, structured data. It utilizes deep learning models to perform layout analysis, identifying document regions and extracting complex content such as mathematical expressions. By combining these neural network inferences with geometric heuristics, the system reconstructs the reading order and structural hierarchy of documents to ensure accurate data representation. The project distinguishes itself through a multi-stage processing workflow that integrates layout detection, optical character recogn

    MinerU is a deep‑learning–based document parsing pipeline that performs layout analysis and optical character recognition on images and PDFs to produce machine‑readable structured data, directly meeting your need for an OCR tool with preprocessing and structure detection, though it may not include a dedicated CLI or custom model training out of the box.

    PythonDeployment & ServingDocument Layout AnalysisAutomated Data Extraction
    View on GitHub↗67,734
  • facebookresearch/nougatfacebookresearch avatar

    facebookresearch/nougat

    10,015View on GitHub↗

    Nougat is a neural OCR system and LLM document parser designed to convert images of academic PDF documents into structured markdown text and mathematical formulas. It functions as a PDF to markdown converter that uses deep learning to handle layout and formula recognition. The project provides a document training pipeline for generating datasets and training neural networks to recognize specific academic document styles. This includes utilities for training dataset generation, neural model training, and model checkpoint management to ensure reproducible deployment. The system covers a broad

    Nougat is a neural OCR system designed specifically for academic PDFs, converting them to structured markdown with layout and formula recognition using deep learning—it fits the OCR engine category with training capabilities, though it is specialized to scholarly documents rather than general-purpose OCR.

    PythonPDF to Markdown ConvertersEnd-to-End Document ParsersImage-to-Text Transformers
    View on GitHub↗10,015
  • tmbdev/ocropytmbdev avatar

    tmbdev/ocropy

    3,468View on GitHub↗

    Python-based tools for document analysis and OCR

    Ocropy is a Python-based toolkit specifically built for document analysis and OCR, making it a direct fit for extracting text from images, though it may not cover every modern feature like deep learning or custom model training.

    Jupyter NotebookGraphics and Design
    View on GitHub↗3,468
  • jinpengli/deep_ocrJinpengLI avatar

    JinpengLI/deep_ocr

    1,511View on GitHub↗

    Deep OCR is a deep learning framework designed for the recognition of Chinese characters within images. It functions as an optical character recognition library that converts scanned documents or image files into digital text, providing an alternative to traditional template matching methods. The system utilizes a combination of convolutional neural networks for spatial feature extraction and recurrent sequence modeling to capture contextual relationships between characters. It employs connectionist temporal classification to map image sequences to character strings without requiring explicit

    This repository is an OCR engine specifically targeting Chinese character recognition, aiming to outperform Tesseract for that language; it fits the core intent of extracting text from images, though details on multi-language support, preprocessing, or output formats are not evident.

    PythonChinese OCR ToolsChinese Text RecognitionImage Recognition Engines
    View on GitHub↗1,511
  • robertknight/ocrsrobertknight avatar

    robertknight/ocrs

    1,843View on GitHub↗

    This project is a terminal-based optical character recognition engine that uses neural network models to extract text and spatial layout data from images. It functions as both a command-line utility for automated text processing and a library for integrating machine learning-powered recognition into broader workflows. The engine distinguishes itself through a modular processing pipeline that supports custom model loading and memory-mapped weight initialization for efficient execution. It preserves document structure by tracking precise geometric coordinates for every detected text element, an

    ocrs is a Rust library and CLI for extracting text from images, making it a genuine OCR engine, but its description does not confirm multi-language support, layout analysis, or model training that the full search seeks.

    RustOCR Command Line InterfacesDocument Spatial Coordinate OutputsImage Text Extractions
    View on GitHub↗1,843
Compare the top 10 at a glance
RepositoryStarsLanguageLicenseLast push
tesseract-ocr/tesseract74.8KC++Apache-2.0Jun 15, 2026
jbarlow83/ocrmypdf33.9KPythonMPL-2.0Jun 17, 2026
breezedeus/pix2text
3K
Jupyter Notebook
mit
Feb 7, 2026
madmaze/pytesseract6.4KPythonApache-2.0May 25, 2026
rednote-hilab/dots.ocr7.7KPythonmitFeb 15, 2026
ub-mannheim/tesseract4.1KC++apache-2.0Feb 20, 2026
paddlepaddle/paddleocr82.4KPythonApache-2.0Jun 16, 2026
rapidai/rapidocr6KPythonapache-2.0Feb 13, 2026
jaidedai/easyocr29.6KPythonApache-2.0Dec 5, 2025
mindee/doctr6.1KPythonApache-2.0Jun 23, 2026

Related searches

  • an OCR engine for document text extraction
  • an ocr tool for converting pdfs to markdown
  • a toolkit for entity extraction from text
  • a web scraping tool for data extraction
  • an open source tool for editing PDFs
  • a self hosted system for document management
  • a library for web scraping in Rust
  • a library for image processing in Rust