--- title: OCR & Document AI (PaddleOCR + EasyOCR) emoji: 🧾 colorFrom: blue colorTo: green sdk: gradio sdk_version: "5.0.0" app_file: app.py pinned: false --- # OCR & Document AI Pipeline (PaddleOCR + EasyOCR) A production-flavored OCR pipeline for images and PDFs. It rasterizes PDFs to images (via PyMuPDF), performs OCR with **PaddleOCR** (high-quality, multilingual) or **EasyOCR** (lightweight fallback), and returns structured JSON (bounding boxes, text, confidence). Includes a web demo with image/PDF previews and JSON download. > **Ethics note:** Process only documents you own or are authorized to use. Handle sensitive data responsibly. ------------------------------------------------------------ Features ------------------------------------------------------------ - Images and PDFs (page rendering via PyMuPDF) - OCR with **PaddleOCR** (multilingual, high-quality) or **EasyOCR** (fallback) - Clean JSON schema per text block (page, bbox, text, confidence) - Gradio demo with image preview, PDF first-page preview, and JSON export - CLI for batch jobs (local use) ------------------------------------------------------------ Quickstart (Local) ------------------------------------------------------------ 1) Create & activate a virtual environment macOS / Linux: python3 -m venv .venv source .venv/bin/activate Windows PowerShell: python -m venv .venv .\.venv\Scripts\Activate.ps1 2) Install dependencies pip install --upgrade pip pip install -r requirements.txt 3) Try the CLI # Add a sample image or PDF into examples/input/ python -m ocrpkg.core examples/input examples/output --lang en 4) Run the demo python app.py # Open the local URL in your browser, upload a file, and download results. ------------------------------------------------------------ Output Format ------------------------------------------------------------ Each OCR block (JSON): { "page": 1, "bbox": [100, 200, 250, 240], "text": "Invoice #1234", "confidence": 0.92 } ------------------------------------------------------------ Tech Stack ------------------------------------------------------------ - PaddleOCR (primary OCR engine) - EasyOCR (fallback engine) - PyMuPDF (PDF rendering) - OpenCV + Pillow (preprocessing) - Pydantic (schema) - Gradio (demo UI) - Click (CLI) ------------------------------------------------------------ License ------------------------------------------------------------ MIT License. Respect the license of third-party models and libraries.