{"id":29216749,"url":"https://github.com/tsvetang2/advanced-local-ocr","last_synced_at":"2025-07-03T01:04:25.810Z","repository":{"id":301659098,"uuid":"1009941649","full_name":"TsvetanG2/Advanced-Local-OCR","owner":"TsvetanG2","description":"Advanced local OCR is a project, inspired by the text extraction some AIs do. So instead of leaving people paying for such services, why not publish a open-source version, that keeps the privacy of each user. The app allows integration with LLMs via APIs. ","archived":false,"fork":false,"pushed_at":"2025-06-28T03:17:21.000Z","size":0,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-28T03:29:02.788Z","etag":null,"topics":["desktop-app","easyocr","gui-application","image-processing","llms","local-first","ocr","ocr-engine","ocr-python","ocr-text-reader","privacy","pyqt5","pyqt5-desktop-application","tesseract","text-cleaning","text-recognition-from-image"],"latest_commit_sha":null,"homepage":"https://github.com/TsvetanG2/Advanced-Local-OCR","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TsvetanG2.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-28T02:32:44.000Z","updated_at":"2025-06-28T03:19:54.000Z","dependencies_parsed_at":"2025-06-28T03:39:10.856Z","dependency_job_id":null,"html_url":"https://github.com/TsvetanG2/Advanced-Local-OCR","commit_stats":null,"previous_names":["tsvetang2/advanced-local-ocr"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/TsvetanG2/Advanced-Local-OCR","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TsvetanG2%2FAdvanced-Local-OCR","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TsvetanG2%2FAdvanced-Local-OCR/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TsvetanG2%2FAdvanced-Local-OCR/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TsvetanG2%2FAdvanced-Local-OCR/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TsvetanG2","download_url":"https://codeload.github.com/TsvetanG2/Advanced-Local-OCR/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TsvetanG2%2FAdvanced-Local-OCR/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263239727,"owners_count":23435683,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["desktop-app","easyocr","gui-application","image-processing","llms","local-first","ocr","ocr-engine","ocr-python","ocr-text-reader","privacy","pyqt5","pyqt5-desktop-application","tesseract","text-cleaning","text-recognition-from-image"],"created_at":"2025-07-03T01:04:22.602Z","updated_at":"2025-07-03T01:04:25.792Z","avatar_url":"https://github.com/TsvetanG2.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🔍 Advanced Local OCR Studio\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Python 3.8+](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/)\n[![PyQt5](https://img.shields.io/badge/GUI-PyQt5-green.svg)](https://pypi.org/project/PyQt5/)\n\nA **modern, professional OCR application** with intelligent text cleaning and beautiful UI. Built for **local-first processing** with optional AI enhancements.\n\n\n## ✨**Why This OCR App is Special**\n\n**Solves Real OCR Problems** - Transforms garbled OCR output like `\"cyoGuoyy pu\"` into perfect text: `\"Trailing only Facebook Messenger, WeChat is now the second most popular messaging platform in Bhutan and Mongolia.\"`\n\n**Local-First Design** - Works completely offline, no API keys required, your images never leave your computer\n\n**Beautiful Modern UI** - Professional design that rivals commercial software (9.2/10 visual rating)\n\n**Smart Text Cleaning** - Advanced algorithms that reconstruct coherent text from fragmented OCR results\n\n## **Key Features**\n\n### **Dual OCR Engine Power**\n- **EasyOCR + Tesseract** - Best of both worlds for maximum accuracy\n- **Smart Fallback System** - Automatically chooses the best engine for each image\n- **Advanced Preprocessing** - Adaptive enhancement, noise reduction, deskewing\n- **Confidence-Based Processing** - Intelligent quality assessment\n\n### **Revolutionary Text Cleaning**\n- **Smart Fragment Reconstruction** - Rebuilds coherent sentences from OCR fragments\n- **Duplicate Elimination** - Removes redundant and overlapping text\n- **Error Pattern Recognition** - Fixes common OCR mistakes automatically\n- **Context-Aware Processing** - Understands text patterns for better results\n\n### **Professional User Interface**\n- **Modern Design Language** - Beautiful gradients, rounded corners, professional styling\n- **Intuitive Workflow** - Load → Process → Review → Compare\n- **Real-Time Feedback** - Progress indicators, status updates, confidence scores\n- **Responsive Layout** - Adapts to different screen sizes\n\n### **Advanced Analysis**\n- **Text Comparison Engine** - Detailed accuracy analysis with similarity scoring\n- **Confidence Visualization** - Color-coded results (🟢🟡🔴)\n- **Processing Insights** - Engine performance, timing, quality metrics\n- **Error Categorization** - Detailed breakdown of text differences\n\n### **Developer-Friendly**\n- **Modular Architecture** - Clean, extensible codebase\n- **Comprehensive Logging** - Detailed debugging information\n- **Thread-Safe Design** - Proper cleanup, no memory leaks\n- **Well-Documented** - Clear code comments and documentation\n\n## **Quick Start**\n\n### **Prerequisites**\n- Python 3.8 or higher\n- Tesseract OCR (recommended)\n\n### **1. Clone \u0026 Install**\n```bash\n# Clone the repository\ngit clone https://github.com/yourusername/advanced-local-ocr-studio.git\ncd advanced-local-ocr-studio\n\n# Install core dependencies\npip install -r requirements.txt\n```\n\n### **2. Install OCR Engines**\n```bash\n# Install EasyOCR (recommended)\npip install easyocr\n\n# Install Tesseract\n# Windows: Download from https://github.com/UB-Mannheim/tesseract/wiki\n# macOS: brew install tesseract\n# Linux: sudo apt-get install tesseract-ocr\npip install pytesseract\n```\n\n### **3. Run the Application**\n```bash\n# Simple start\npython app.py\n\n# Or directly\npython enhanced_ocr_app.py\n```\n\n### **4. Basic Workflow**\n1. **Load Image** - Click \"📂 Load Image\" or drag \u0026 drop\n2. **Configure** - Enable preprocessing, choose OCR engine\n3. **Extract** - Click \"✨ Extract Text\" to process\n4. **Compare** - (Optional) Enter expected text for accuracy analysis\n5. **Review** - Check cleaned results and raw OCR data\n\n## 🎯 **Real-World Example**\n\n### **The Problem This Solves**\nMany OCR tools produce garbled, unusable output. Here's a real example:\n\n**❌ Typical OCR Output:**\n```\n\"cyoGuoyy pu\"\n```\n\n**❌ Raw OCR with Artifacts:**\n```\n\"Trailing only Facebook Messenger, WeChat is now the second most popular messaging platform in Bhutan and Mongolia. Bhutan and Mongolia. popular messaging platform in Trailing only Facebook Messenger, WeChat is now the second most Bhutanland Trailing only Facebook Messenger Trai €b: Més: WeChat'is:now:the:second most: popuilar:mess lattormin id Mon Mongoliax WeChatis now [he second mosti popular messaging platform;jn\"\n```\n\n**✅ Our Smart Cleaned Result:**\n```\n\"Trailing only Facebook Messenger, WeChat is now the second most popular messaging platform in Bhutan and Mongolia.\"\n```\n\n**🎯 100% Perfect Accuracy!**\n\n## ⚙️ **Configuration**\n\nThe application uses smart defaults but can be customized via `config/settings.yaml`:\n\n### **OCR Settings**\n```yaml\nocr:\n  engines:\n    easyocr:\n      enabled: true\n      gpu: false  # Set to true if you have CUDA GPU\n      text_threshold: 0.8\n    tesseract:\n      enabled: true\n      oem: 1  # LSTM OCR Engine\n      psm: 6  # Uniform block of text\n```\n\n### **Smart Cleaning**\n```yaml\ntext_cleaning:\n  smart_cleaner: true  # Use advanced text reconstruction\n  confidence_threshold: 0.3\n  min_text_length: 2\n```\n\n### **UI Preferences**\n```yaml\nui:\n  theme: \"modern\"  # Modern blue theme\n  window_size: [1200, 800]\n  auto_save_settings: true\n```\n## **Media**\n### **Main window**\n![Screenshot 2025-06-28 173301](https://github.com/user-attachments/assets/1e568fc3-731e-4189-8dd1-fc2867d927ce)\n\n\n## 🏗️ **Architecture**\n\n### **Local-First Design**\n- **Offline Processing**: Works completely without internet\n- **Privacy-Focused**: Images never leave your computer\n- **Fast Performance**: No network latency or API limits\n- **Optional AI**: LLM features are completely optional\n\n### **🧩 Modular Components**\n```\n📁 Advanced Local OCR Studio\n├── 🎨 enhanced_ocr_app.py     # Beautiful main application\n├── 🚀 app.py                  # Simple entry point\n├── 📁 src/\n│   ├── 🔍 core/               # OCR processing engines\n│   │   ├── local_ocr.py       # Dual OCR engine manager\n│   │   ├── smart_text_cleaner.py  # Revolutionary text cleaning\n│   │   └── text_processors.py # Analysis and comparison\n│   └── 🛠️ utils/              # Configuration and utilities\n├── 📁 tests/                  # Comprehensive test suite\n└── 📁 docs/                   # Documentation\n```\n\n## 🤝 **Contributing**\n\nWe welcome contributions! This project is designed to be **developer-friendly**.\n\n### **🚀 Quick Start for Contributors**\n```bash\n# Fork and clone\ngit clone https://github.com/yourusername/advanced-local-ocr-studio.git\ncd advanced-local-ocr-studio\n\n# Set up development environment\npython -m venv venv\nsource venv/bin/activate  # Windows: venv\\Scripts\\activate\npip install -r requirements.txt\npip install -r requirements-dev.txt\n\n# Run tests\npython -m pytest tests/\npython tests/test_installation.py\n```\n\n### **📋 Contribution Areas**\n- **Language Support**: Add support for more languages\n- **OCR Engines**: Integrate additional OCR engines\n- **UI Improvements**: Enhance the beautiful interface\n- **Smart Cleaning**: Improve text reconstruction algorithms\n- **Documentation**: Help others understand and use the project\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for detailed guidelines.\n\n## 📄 **License**\n\nThis project is licensed under the **MIT License** - see the [LICENSE](LICENSE) file for details.\n\n## 🙏 **Acknowledgments**\n\n- **EasyOCR** team for excellent neural OCR\n- **Tesseract** community for robust traditional OCR\n- **PyQt5** for powerful GUI framework\n- **Open Source Community** for inspiration and support\n\n## 📞 **Support \u0026 Community**\n\n- **Documentation**: [docs/](docs/) folder\n- **Bug Reports**: [GitHub Issues](https://github.com/TsvetanG2/advanced-local-ocr-studio/issues)\n- **Feature Requests**: [GitHub Discussions](https://github.com/TsvetanG2/Advanced-Local-OCR/discussions)\n- **Show Support**: Star the repository if you find it useful!\n\n---\n\n**🎉 Transform your OCR experience with intelligent text cleaning and beautiful design!**\n\n[![Star this repo](https://img.shields.io/github/stars/yourusername/advanced-local-ocr-studio?style=social)](https://github.com/TsvetanG2/Advanced-Local-OCR)\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftsvetang2%2Fadvanced-local-ocr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftsvetang2%2Fadvanced-local-ocr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftsvetang2%2Fadvanced-local-ocr/lists"}