← 返回
未分类

OCR中英文识别加强版

高精度中英文OCR技能 v2.0 - 多引擎集成 + 专项预处理 + LLM纠错三层架构。 支持PDF和图片输入,大幅提升印刷体和手写体识别准确度。 引擎:RapidOCR(本地中英) + RapidOCR-EN(英文专用) + PP-OCRv5(手写体) + EasyOCR(80+语言) + 腾讯OCR(MCP) + Vision LLM纠错。
|OCR-Pro v2.1.0 技能描述 一句话概括 OCR-Pro 是一个高精度中英文 OCR 技能,采用三层架构(图像预处理 + 多引擎 OCR + LLM 纠错),专为扫描件、手写体、英文印刷体等复杂场景设计,最大程度提升识别准确率。 核心架构 层级 方法 准确度提升 成本 L1 图像预处理 通用/英文/手写体三种模式 +10–30% 零 L2 多引擎 OCR 5 大引擎智能选择 +15–35% 免费(本地) L3 LLM 纠错 视觉模型对照原图修正 +20–40% API 调用 最终准确度:印刷体中文 ≥95%,印刷体英文 ≥97%,手写体中文 ≥85%,手写体英文 ≥90%。 内置 OCR 引擎 引擎 适用场景 特点 RapidOCR (PP-OCRv3) 中英文通用,速度最快 本地免费,自动下载模型 RapidOCR-EN (en_PP-OCRv3) 英文印刷体专项 准确度高于通用模型 PP-OCRv5 中英日 + 手写体 手写体专项优化 EasyOCR 80+ 语言,英文手写体最强 基于 CRAFT + ResNet 腾讯 OCR (MCP 调用) 表格、结构化文档 云端,表格结构保持好 预处理模式 根据文档类型选择对应预处理策略: 模式 适用场景 关键处理 standard 中英混合、扫描件 CLAHE 对比度增强 + 轻度锐化 english 英文印刷体 更强锐化 + 字间距保留 handwriting 手写体 断笔修复 + 淡墨增强(形态学闭运算) 典型使用流程 输入处理 对 PDF:先检测是否含嵌入文字 → 若有则直接提取;若无则转为 300 DPI 图片。 图像预处理(根据场景选择模式) bash python preprocess.py --input image.png --output out/ --mode english 多引擎 OCR(智能选择或全引擎运行) bash python ocr_pipeline.py --input processed.png --engine english --detail LLM 纠错(自动生成专用 prompt) bash python format_correction.py --ocr-result out.json --image original.png --mode english 输出:纯文本 / JSON / Markdown。 智能引擎选择策略 场景 推荐引擎 预处理 纠错模式 英文印刷 PDF english english english 英文手写作业 handwriting handwriting english_handwriting 扫描版中文 rapidocr standard standard 中英混合 mixed standard standard 低质量/极致准确 all(全部引擎) standard+二值化 standard 关键优化技巧 英文专用模型:en_PP-OCRv3_rec 对印刷体英文准确度提升约 10%。 手写体预处理:形态学断笔修复 + 淡墨 CLAHE 增强,提升约 15%。 多引擎合并:字符级投票或最长文本启发式,消除单引擎错误。 LLM 纠错:针对常见 OCR 错误(0/O、1/l/I、中文形近字「未/末」「己/已」等)专项提示,提升最大。 模型与依赖管理 模型(PP-OCRv3/v4/v5、英文专用)首次使用时自动从 HuggingFace 镜像下载到 ~/.cache/workbuddy/ocr-pro/models/,总计约 60 MB。 依赖包:rapidocr-onnxruntime、easyocr、PyMuPDF、opencv-python-headless、Pillow、numpy。 使用固定 Python 虚拟环境路径(Windows 示例路径已在 SKILL.md 中定义)。 适用场景 扫描版 PDF / 影印件文字识别 手机拍照文档 英文印刷教材(准确度最高) 学生手写作业(中英文) 低质量旧扫描件(交叉验证 + 纠错) 中英混排、表格、公式等复杂版面 不适用场景 已含嵌入文字的 PDF(建议直接提取,无需 OCR) 对实时性要求极高(本地模型耗时 1–15 秒/页,LLM 纠错更慢) 纯手写且极度潦草、无任何上下文的单字识别(准确度下降) 总结 OCR-Pro 是一个生产级、高可定制的 OCR 技能,通过针对性预处理 + 多引擎投票 + 视觉模型纠错三层组合,在几乎零成本(本地引擎)或极低成本(LLM 纠错按 token 计费)下,将普通 OCR 的 90% 左右准确度提升到 95–99%,尤其擅长英文和手写体场景。
跃渊META SKILLDIY
未分类 community v2.1.0 1 版本 100000 Key: 无需
★ 0
Stars
📥 36
下载
💾 0
安装
1
版本
#latest

概述

OCR-Pro v2.0: 高精度中英文OCR技能

概述

本技能采用 三层架构 + 引擎专项优化 极大提升OCR准确度:

层级方法准确度提升成本
-----------------------------
L1 图像预处理通用/英文/手写体三种模式+10-30%
L2 多引擎OCR5大引擎智能选择+15-35%免费
L3 LLM纠错视觉模型对照原图修正+20-40%API调用

最终准确度:印刷体中文95%+,印刷体英文97%+,手写体中文85%+,手写体英文90%+

前置条件

必须

  • Python 3.10+ (venv隔离环境)
  • 网络连接(首次使用时自动下载模型,约 60MB,一次性)

OCR引擎(越多准确度越高)

引擎安装方式适用场景模型
------------------------------
RapidOCR(PP-OCRv3)pip install rapidocr-onnxruntime中英文通用,最快自动下载
EasyOCRpip install easyocr80+语言,英文手写体最强自动下载
PP-OCRv4 ONNX已集成中英文通用(v4改进)首次使用自动下载(~17MB)
PP-OCRv5 ONNX已集成中英日+手写体专项优化首次使用自动下载(~21MB)
en_PP-OCRv3 ONNX已集成英文印刷体专项首次使用自动下载(~9MB)

> 引擎的 Python 包通过 pip 安装,模型文件在首次调用对应引擎时自动从 HuggingFace 镜像 (hf-mirror.com) 下载到 ~/.cache/workbuddy/ocr-pro/models/。RapidOCR 默认模型由其包自行管理。

辅助库

  • PyMuPDF (pip install PyMuPDF) - PDF处理
  • OpenCV (pip install opencv-python-headless) - 图像预处理
  • Pillow (pip install Pillow) - 图像预处理

Python环境路径

VENV_PATH: C:\Users\Administrator\.workbuddy\binaries\python\envs\ocr-pro
PYTHON: C:\Users\Administrator\.workbuddy\binaries\python\envs\ocr-pro\Scripts\python.exe
SCRIPTS_DIR: C:\Users\Administrator\.workbuddy\skills\ocr-pro\scripts

首次使用安装依赖

# 创建venv(如不存在)
C:\Users\Administrator\.workbuddy\binaries\python\versions\3.13.12\python.exe -m venv C:\Users\Administrator\.workbuddy\binaries\python\envs\ocr-pro

# 核心依赖
C:\Users\Administrator\.workbuddy\binaries\python\envs\ocr-pro\Scripts\pip.exe install rapidocr-onnxruntime PyMuPDF opencv-python-headless Pillow numpy

# 英文/手写体强化(可选但强烈推荐)
C:\Users\Administrator\.workbuddy\binaries\python\envs\ocr-pro\Scripts\pip.exe install easyocr modelscope

执行流程

流程总览

输入(PDF/图片)
    ↓
[检测类型] → PDF? → [提取嵌入文字] → 有文字? → 直接输出
    ↓               ↓
    ↓            无文字? → [PDF转图片]
    ↓               ↓
图片? ────────────→ [图像预处理] ← 根据场景选择模式
                       ↓           ├─ standard (通用)
                       ↓           ├─ english (英文印刷)
                       ↓           └─ handwriting (手写体)
                  [多引擎OCR] ← 智能选择引擎
                  ├─ RapidOCR (中英通用,最快)
                  ├─ RapidOCR-EN (英文专用模型)
                  ├─ PP-OCRv5 (中英日+手写体)
                  ├─ EasyOCR (80+语言,手写体强)
                  └─ 腾讯OCR (MCP,表格强)
                       ↓
                  [合并结果] ← 置信度加权
                       ↓
                  [LLM纠错] ← 对照原图 + 专项prompt
                       ↓
                  输出(文字/JSON)

Step 1: 输入检测与PDF处理

如果输入是PDF文件:

  1. 先用 pdf_to_images.py --info 检测PDF信息
  2. 如果有嵌入文字(digital PDF):
    • pdf_to_images.py --text 提取嵌入文字
    • 直接输出,不需要OCR
  3. 如果是扫描件(scanned PDF):
    • pdf_to_images.py 转为300DPI图片
    • 继续Step 2
# 检测PDF信息
{{PYTHON}} {{SCRIPTS_DIR}}/pdf_to_images.py --input "<pdf_path>" --info

# 提取嵌入文字(digital PDF)
{{PYTHON}} {{SCRIPTS_DIR}}/pdf_to_images.py --input "<pdf_path>" --text

# 转为图片(scanned PDF)
{{PYTHON}} {{SCRIPTS_DIR}}/pdf_to_images.py --input "<pdf_path>" --output "<output_dir>" --dpi 300

Step 2: 图像预处理

根据场景选择预处理模式:

# 通用预处理(中英混合)
{{PYTHON}} {{SCRIPTS_DIR}}/preprocess.py --input "<image_path>" --output "<output_dir>" --dpi 300

# 英文印刷体专项预处理(更强锐化+字间距保留)
{{PYTHON}} {{SCRIPTS_DIR}}/preprocess.py --input "<image_path>" --output "<output_dir>" --dpi 300 --mode english

# 手写体专项预处理(断笔修复+淡墨增强)
{{PYTHON}} {{SCRIPTS_DIR}}/preprocess.py --input "<image_path>" --output "<output_dir>" --dpi 300 --mode handwriting

# 加二值化(极低质量文档)
{{PYTHON}} {{SCRIPTS_DIR}}/preprocess.py --input "<image_path>" --output "<output_dir>" --dpi 300 --binarize

预处理模式对比:

模式去噪对比度锐化特殊处理
----------------------------------
standard自适应CLAHE 2.0轻度(0.3)
english自适应CLAHE 2.5强力(0.5)英文字体边缘强化
handwriting轻柔CLAHE 3.0轻度(0.3)形态学断笔修复+淡墨增强

Step 3: 多引擎OCR

查看可用引擎

{{PYTHON}} {{SCRIPTS_DIR}}/ocr_pipeline.py --list-engines

引擎A: RapidOCR (默认,中英通用)

{{PYTHON}} {{SCRIPTS_DIR}}/ocr_pipeline.py --input "<image_path>" --engine rapidocr --detail

引擎B: EasyOCR (英文手写体最强)

# 英文模式
{{PYTHON}} {{SCRIPTS_DIR}}/ocr_pipeline.py --input "<image_path>" --engine easyocr --lang en --detail

# 中英双语模式
{{PYTHON}} {{SCRIPTS_DIR}}/ocr_pipeline.py --input "<image_path>" --engine easyocr --lang en,ch_sim --detail

引擎C: PP-OCRv5 (中英日+手写体)

{{PYTHON}} {{SCRIPTS_DIR}}/ocr_pipeline.py --input "<image_path>" --engine rapidocr_v5 --detail

智能引擎选择(推荐)

# 英文印刷体场景 → 自动选英文专用引擎
{{PYTHON}} {{SCRIPTS_DIR}}/ocr_pipeline.py --input "<image_path>" --engine english --detail

# 手写体场景 → 自动选EasyOCR+V5
{{PYTHON}} {{SCRIPTS_DIR}}/ocr_pipeline.py --input "<image_path>" --engine handwriting --detail

# 中英混合场景 → 自动选V5+RapidOCR
{{PYTHON}} {{SCRIPTS_DIR}}/ocr_pipeline.py --input "<image_path>" --engine mixed --detail

# 全引擎运行(最高准确度)
{{PYTHON}} {{SCRIPTS_DIR}}/ocr_pipeline.py --input "<image_path>" --engine all --detail

引擎D: 腾讯OCR (MCP)

调用 mcp__tencent-docs__ocr.extract 工具识别图片中的文字
参数: image_url 或 image_path

引擎E: Vision LLM直识

对于手写体或低质量图片,直接用视觉语言模型识别效果最好:

  • 读取图片文件(使用Read工具读取图片,视觉模型直接识别)

Step 4: LLM纠错(核心提升步骤)

这是准确度提升最大的步骤!

自动生成纠错Prompt

# 中文印刷体
{{PYTHON}} {{SCRIPTS_DIR}}/format_correction.py --ocr-result "<json>" --image "<img>" --mode standard

# 中文手写体
{{PYTHON}} {{SCRIPTS_DIR}}/format_correction.py --ocr-result "<json>" --image "<img>" --mode handwriting

# 英文印刷体
{{PYTHON}} {{SCRIPTS_DIR}}/format_correction.py --ocr-result "<json>" --image "<img>" --mode english

# 英文手写体
{{PYTHON}} {{SCRIPTS_DIR}}/format_correction.py --ocr-result "<json>" --image "<img>" --mode english_handwriting

# 表格
{{PYTHON}} {{SCRIPTS_DIR}}/format_correction.py --ocr-result "<json>" --image "<img>" --mode table

# 输出到文件
{{PYTHON}} {{SCRIPTS_DIR}}/format_correction.py --ocr-result "<json>" --image "<img>" --mode english --output "<txt>"

手动纠错流程

  1. Read 工具读取原始图片(视觉模型可看到图片内容)
  2. 将OCR原始文本粘贴到对话中
  3. 使用纠错prompt模板,让模型对照图片修正

Step 5: 输出

根据用户需求输出:

  • 纯文本 (.txt)
  • JSON格式 (.json) - 含每个文字块的位置和置信度
  • Markdown格式 (.md) - 保留标题和段落结构
  • 直接在对话中输出

使用场景示例

场景1: 英文教材扫描件

用户: 识别这个英文PDF
→ Step 1: 检测PDF → 扫描件
→ Step 2: 预处理 --mode english
→ Step 3: --engine english(自动选英文专用模型)
→ Step 4: --mode english 纠错
→ Step 5: 输出

场景2: 学生英语手写作业

用户: 识别学生英语手写
→ Step 2: 预处理 --mode handwriting
→ Step 3: --engine handwriting(EasyOCR + PP-OCRv5)
→ Step 4: --mode english_handwriting 纠错
→ Step 5: 输出

场景3: 中文扫描版PDF

用户: 帮我识别这个PDF里的文字
→ Step 1: 检测PDF → 扫描件
→ Step 2: 预处理 standard
→ Step 3: --engine rapidocr
→ Step 4: --mode standard 纠错
→ Step 5: 输出

场景4: 极致准确度模式

用户: 必须100%准确
→ Step 2: 预处理(standard + binarize两版)
→ Step 3: --engine all(全部引擎)
→ Step 4: LLM纠错(参考多引擎结果+原图)
→ Step 5: 输出

引擎选择策略

场景推荐引擎预处理模式纠错模式原因
-----------------------------------------
英文印刷PDFenglishenglishenglish英文专用模型+强锐化
英文手写作业handwritinghandwritingenglish_handwritingEasyOCR手写体强+断笔修复
中文印刷PDFPyMuPDF提取数字PDF无需OCR
扫描版中文rapidocrstandardstandard本地免费+纠错
中英混合mixedstandardstandardV5+RapidOCR
低质量扫描件allstandard+binarizestandard多引擎+预处理
表格腾讯OCRstandardtable表格结构保持好

准确度优化技巧

  1. 英文印刷体用 --mode english — 英文专用模型+更强锐化,准确度+10%
  2. 手写体用 --mode handwriting — 断笔修复+淡墨增强,准确度+15%
  3. EasyOCR是英文手写体最佳引擎 — CRAFT检测+ResNet识别,专为手写设计
  4. PP-OCRv5对手写体有专项提升 — 中英日+手写体一体化
  5. 多引擎交叉验证 — 两个引擎都识别对的字,准确度极高
  6. LLM纠错是最大提升因素 — 尤其是英文易混淆字符
  7. 英文纠错专用prompt — 针对rn/m、cl/d、0/O等英文常见错误

文件结构

~/.workbuddy/skills/ocr-pro/          # Skill 包(<100KB,不含模型)
├── SKILL.md                          # 技能定义和指令
├── scripts/
│   ├── preprocess.py                 # 图像预处理(3种模式)
│   ├── pdf_to_images.py              # PDF处理
│   ├── ocr_pipeline.py               # OCR流水线(5引擎+智能选择+合并)
│   ├── format_correction.py          # LLM纠错prompt生成器
│   └── model_downloader.py           # 模型自动下载(首次运行触发)
└── references/
    └── engine_comparison.md          # 引擎对比参考

~/.cache/workbuddy/ocr-pro/models/    # 模型缓存(首次使用自动下载,~60MB)
├── PP-OCRv3/                         # en_PP-OCRv3_rec (~9MB)
├── PP-OCRv4/                         # v4 det+rec (~17MB)
└── PP-OCRv5/                         # v5 det+rec+dict (~21MB)

变量替换说明

在使用本技能的bash命令时,以下变量需替换为实际路径:

  • {{PYTHON}}C:\Users\Administrator\.workbuddy\binaries\python\envs\ocr-pro\Scripts\python.exe
  • {{SCRIPTS_DIR}}C:\Users\Administrator\.workbuddy\skills\ocr-pro\scripts

完整端到端命令示例

# === 英文印刷体 ===
# 1. 英文专项预处理
{{PYTHON}} {{SCRIPTS_DIR}}/preprocess.py --input "input.png" --output "preprocessed/" --dpi 300 --mode english
# 2. 英文引擎识别
{{PYTHON}} {{SCRIPTS_DIR}}/ocr_pipeline.py --input "preprocessed/input_preprocessed.png" --engine english --detail
# 3. 英文纠错
{{PYTHON}} {{SCRIPTS_DIR}}/format_correction.py --ocr-result "ocr_output.json" --image "input.png" --mode english

# === 英文手写体 ===
# 1. 手写体预处理
{{PYTHON}} {{SCRIPTS_DIR}}/preprocess.py --input "input.png" --output "preprocessed/" --dpi 300 --mode handwriting
# 2. 手写体引擎识别
{{PYTHON}} {{SCRIPTS_DIR}}/ocr_pipeline.py --input "preprocessed/input_preprocessed.png" --engine handwriting --detail
# 3. 英文手写体纠错
{{PYTHON}} {{SCRIPTS_DIR}}/format_correction.py --ocr-result "ocr_output.json" --image "input.png" --mode english_handwriting

# === 通用(中文/混合)===
# 1. 标准预处理
{{PYTHON}} {{SCRIPTS_DIR}}/preprocess.py --input "input.png" --output "preprocessed/" --dpi 300
# 2. 标准引擎识别
{{PYTHON}} {{SCRIPTS_DIR}}/ocr_pipeline.py --input "preprocessed/input_preprocessed.png" --engine rapidocr --detail
# 3. 标准纠错
{{PYTHON}} {{SCRIPTS_DIR}}/format_correction.py --ocr-result "ocr_output.json" --image "input.png" --mode standard

版本历史

共 1 个版本

  • v2.1.0 Initial release 当前
    2026-06-07 23:16 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

超级课题大师

user_6455574a
>超级课题大师 — 教育科研课题全生命周期一站式专家。覆盖第零阶段(政策情报与选题规划)→第一阶段(申报书撰写)→第二阶段(质量检测与优化)→第三阶段(成果汇编)→第四阶段(答辩演练)→第五阶段(实施管理)六大环节。五级适配(校/县/市/省
★ 0 📥 13

全科试卷生成——基于自有知识库和仿真题生成

user_6455574a
上传知识库资料 + 真题模板 → OCR提取文字(支持扫描件/图片) → AI分析题型结构与知识点 → 生成同题型仿真新试题。 内置质量自动校验(答案完整性/知识点覆盖/难度分布/结构匹配/去重检测)。 已融合 OCR-Pro 多引擎识别能
★ 0 📥 32

SuperSearch超强搜索

user_6455574a
>-一个关键词,搜遍全网。 输入任何话题,SuperSearch 瞬间并行检索百度、微信、微博、抖音、知乎、B站、头条、小红书等 20+ 核心平台,智能去重、按相关性排序、标注内容新鲜度,5 秒内生成一份结构化舆情报告。支持学术论文、财经分
★ 1 📥 22