运行时依赖
安装命令
点击复制技能文档
基于 Tesseract.js(Tesseract OCR 引擎的 WebAssembly 端口)从图像中提取文本内容。
使用场景 使用时机:当用户需要“图像到文本”、“OCR识别”、“从图像中提取文本”、“截图字符识别”、“扫描到文本”或“图像文本方向检测”时。
核心能力 从本地图像或图像 URL 中识别文本 支持 100 多种语言,可同时指定多种语言(例如 ['eng', 'chi_sim']) 支持指定识别区域(--rectangle)、字符白名单(--whitelist) 支持文本方向和脚本检测(--detect) 支持切换页面分割模式(--psm)和 OCR 引擎模式(--oem) 输出格式:文本(默认)、hocr、blocks(JSON)、tsv
限制 不支持 PDF 文件 不修改 Tesseract 识别模型以提高准确率 需要 Node.js 环境(此 Skill 使用 Node.js 脚本)
工作流程
- 确认环境
- 执行识别
常见示例: # 基本混合中文英文识别 node scripts/ocr.js photo.jpg --lang chi_sim+eng # 只识别数字(车牌、验证码等) node scripts/ocr.js captcha.png --whitelist 0123456789 # 列表识别(适合垂直中文文本) node scripts/ocr.js scroll.jpg --lang chi_sim --psm 4 # 指定识别区域 node scripts/ocr.js receipt.png --rectangle 50,100,400,200 # 检测图像文本方向 node scripts/ocr.js rotated.jpg --detect # 输出结构化数据 node scripts/ocr.js doc.png --output blocks # 手动指定 DPI(避免“Invalid resolution 0 dpi”警告) node scripts/ocr.js scan.png --dpi 300
- 批量识别多个图像
PSM — 页面分割模式 --psm 参数控制 Tesseract 如何分析页面布局: PSM 名称 描述 0 OSD_ONLY 仅方向和脚本检测 1 AUTO_OSD 自动页面分割 + 方向检测 2 AUTO_ONLY 自动页面分割,无方向检测 3 AUTO 完全自动页面分割(默认) 4 SINGLE_COLUMN 单列可变大小文本 5 SINGLE_BLOCK_VERT_TEXT 单块垂直文本 6 SINGLE_BLOCK 单块文本 7 SINGLE_LINE 单行文本 8 SINGLE_WORD 单词 9 CIRCLE_WORD 单词圆形排列 10 SINGLE_CHAR 单字符 11 SPARSE_TEXT 稀疏文本(尽可能找到) 12 SPARSE_TEXT_OSD 稀疏文本 + 方向检测 13 RAW_LINE 原始行(视为单行)
OEM — OCR 引擎模式 OEM 描述 0 Legacy 引擎 1 LSTM 神经网络引擎(默认) 2 Legacy + LSTM 3 默认(根据当前配置自动选择)
语言代码快速参考 语言 语言代码 英语 eng 简体中文 chi_sim 繁体中文 chi_tra 日语 jpn 韩语 kor 法语 fra 德语 deu 西班牙语 spa 俄语 rus 阿拉伯语 ara 印地语 hin 完整列表:tesseract_lang_list.md
高级用法 以下场景需要 AI 编写内联脚本,而不是使用 scripts/ocr.js: 重用 Worker 后切换语言:使用 worker.reinitialize(langs, oem) 设置 Tesseract 参数:使用 worker.setParameters({ tessedit_pageseg_mode: ... }) 检测文本方向(需要 Legacy 引擎):调用 worker.detect(image) 后 createWorker('eng', 0, { legacyCore: true, legacyLang: true }) 并行处理大量图像:使用 createScheduler() + 多个 Worker 有关完整的 API 参考,请参见 references/api.md。