Skip to content

dabaiInJesus/offline-ocr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

离线 OCR 识别工具

一个基于 Electron + Vue 3 + Tesseract.js 的离线桌面端 OCR 识别软件,支持26国语言自动识别。

✨ 功能特性

  • 📝 单张图片OCR识别 - 支持拖拽上传、实时预览
  • 📚 批量图片OCR识别 - 一次处理多张图片,导出结果
  • 🌍 26国语言支持 - 中文简体/繁体、日文、韩文、英文、葡萄牙语等
  • 🔍 自动语种检测 - 智能识别图片中的语言类型
  • 高性能识别 - 优化算法,秒出结果
  • 💻 完全离线 - 无需网络连接,保护隐私
  • 🎨 美观界面 - TailwindCSS 打造的现代化 UI

🚀 快速开始

环境要求

  • Node.js >= 18.0.0
  • npm >= 9.0.0 或 pnpm >= 8.0.0

安装依赖

使用 npm:

npm install

使用 pnpm(推荐,更快):

pnpm install

开发模式

# 启动 Web 开发服务器
npm run dev

# 启动 Electron 桌面应用(开发模式)
npm run electron:dev

构建生产版本

# 构建 Web 版本
npm run build

# 构建 Electron 桌面应用安装包
npm run electron:build

构建完成后,安装包将在 release 目录中生成。

📖 使用说明

单张识别

  1. 点击"单张识别"标签页
  2. 选择或拖拽图片到上传区域
  3. 选择识别语言(可选,默认自动检测)
  4. 点击"开始识别"按钮
  5. 查看识别结果,可复制文本

批量识别

  1. 点击"批量识别"标签页
  2. 添加多张图片(支持多选)
  3. 选择识别语言(可选)
  4. 点击"开始批量识别"按钮
  5. 等待处理完成,可查看每个结果
  6. 点击"导出结果"保存为文本文件

🌐 支持的语言

  • 中文简体 (chi_sim)
  • 中文繁体 (chi_tra)
  • 日文 (jpn)
  • 韩文 (kor)
  • 英文 (eng)
  • 葡萄牙语 (por)
  • 西班牙语 (spa)
  • 法语 (fra)
  • 德语 (deu)
  • 意大利语 (ita)
  • 俄语 (rus)
  • 阿拉伯语 (ara)
  • 印地语 (hin)
  • 孟加拉语 (ben)
  • 泰语 (tha)
  • 越南语 (vie)
  • 印尼语 (ind)
  • 土耳其语 (tur)
  • 波兰语 (pol)
  • 荷兰语 (nld)
  • 瑞典语 (swe)
  • 丹麦语 (dan)
  • 挪威语 (nor)
  • 芬兰语 (fin)

💡 性能优化建议

提高识别准确率(重要!)

  1. 启用图像预处理 ⭐⭐⭐⭐⭐

    • 在“高级选项”中勾选“启用图像预处理”
    • 自动放大2倍 + 灰度化 + 二值化
    • 适合低分辨率、模糊图片,可提升 15-30% 准确率
  2. 手动选择语言 ⭐⭐⭐⭐⭐

    • 已知语言时务必手动选择,避免自动检测误差
    • 可提升 20-40% 准确率,速度提升 50%+
  3. 选择合适的 PSM 模式 ⭐⭐⭐⭐

    • 单列文本 → 选择“单列文本”
    • 标题/段落 → 选择“单个文本块”
    • 表格/表单 → 选择“稀疏文本”
    • 可提升 10-25% 准确率
  4. 使用 LSTM 引擎 ⭐⭐⭐⭐

    • 在“高级选项”中选择“LSTM神经网络”
    • 速度快 3-5 倍,准确率更高
  5. 保证图片质量 ⭐⭐⭐⭐⭐

    • 分辨率至少 300 DPI
    • 保持水平,避免倾斜
    • 均匀照明,避免阴影

📖 详细优化指南请查看: ACCURACY_GUIDE.md

一般建议

  1. 首次使用:首次识别某语言时需要下载语言包,请耐心等待
  2. 图片质量:清晰的图片识别准确率更高
  3. 语言选择:如果知道图片语言,手动选择可提升速度和准确度
  4. 批量处理:建议一次处理不超过50张图片,避免内存占用过高

🛠️ 技术栈

  • 框架: Vue 3 + TypeScript
  • 桌面端: Electron
  • 构建工具: Vite
  • 样式: TailwindCSS
  • OCR引擎: Tesseract.js v7.0
  • 打包工具: electron-builder
  • 包管理器: 支持 npm / pnpm

📄 许可证

MIT License

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors