Introduction
Umi-OCR is a free, open-source OCR application that runs entirely on your local machine with no internet connection needed. It provides screenshot OCR, batch image processing, PDF text extraction, and QR code recognition, supporting over 10 languages out of the box.
What Umi-OCR Does
- Performs real-time screenshot OCR with a global hotkey for instant text capture
- Batch processes hundreds of images and extracts text to structured output files
- Reads and extracts text from PDF documents while preserving layout
- Scans and generates QR codes and barcodes from images
- Supports multiple OCR engines including PaddleOCR and RapidOCR for accuracy
Architecture Overview
Umi-OCR is built with a Python backend and a QML-based frontend for cross-platform GUI rendering. The OCR pipeline delegates to pluggable recognition engines (PaddleOCR by default) that run locally via ONNX Runtime or PaddlePaddle inference. A built-in HTTP API server lets external applications call OCR functions programmatically. All processing stays on-device, ensuring complete data privacy.
Self-Hosting & Configuration
- Download a portable release from GitHub — no installer or dependencies required
- Configure OCR language packs by dropping model files into the designated folder
- Enable the HTTP API server in settings to integrate OCR into automation workflows
- Adjust recognition parameters (confidence threshold, text orientation) via the GUI
- Set global hotkeys for screenshot capture, clipboard OCR, and paste-and-recognize
Key Features
- Fully offline operation with zero data leaving your machine
- Multi-engine support for switching between PaddleOCR and RapidOCR backends
- Built-in HTTP API for headless and automation use cases
- Table recognition mode that preserves row-column structure in output
- Ignore-area masks to exclude watermarks, headers, and footers from recognition
Comparison with Similar Tools
- Tesseract — widely used CLI OCR engine but requires manual setup and offers no GUI; Umi-OCR wraps modern engines with a polished desktop interface
- PaddleOCR — the underlying engine Umi-OCR uses; PaddleOCR is a library while Umi-OCR is a ready-to-use application
- EasyOCR — Python library focused on developer integration; Umi-OCR targets end-user workflows with screenshot and batch modes
- Surya — multilingual OCR library optimized for document parsing; Umi-OCR provides a desktop GUI and HTTP API layer on top
- Google Cloud Vision / AWS Textract — cloud APIs with per-call pricing and data upload; Umi-OCR is free and fully offline
FAQ
Q: Does Umi-OCR require an internet connection? A: No. All OCR processing runs locally on your machine. No data is uploaded anywhere.
Q: Which languages does Umi-OCR support? A: It ships with Chinese and English models by default and supports additional language packs for Japanese, Korean, French, German, and more.
Q: Can I use Umi-OCR from the command line or another application? A: Yes. Enable the built-in HTTP API server and send images to the local endpoint for programmatic OCR results in JSON.
Q: Does it work on macOS or Linux? A: The primary releases target Windows. Community builds and source-based installation are available for Linux. macOS support is experimental.