Umi-OCR 离线OCR使用指南:4个场景跑通截图、批量图片与PDF识别
【免费下载链接】Umi-OCROCR software, free and offline. 开源、免费的离线OCR软件。支持截屏/批量导入图片,PDF文档识别,排除水印/页眉页脚,扫描/生成二维码。内置多国语言库。项目地址: https://gitcode.com/GitHub_Trending/um/Umi-OCR
Umi-OCR 离线OCR是一款免费、开源的本地文字识别工具:框屏截图取字、整夹图片批量转文字、扫描版PDF转成可搜索文档,全程不联网、图片不上传。下面按4个真实场景把它跑起来,最后给出接入自动化脚本的命令与接口。
Umi-OCR 离线OCR主界面:左侧预览栏可直接划选文字,右侧记录栏按时间保存每次识别结果
解压即用:离线OCR工具怎么装
发布包是.7z压缩包(或.7z.exe自解压包),支持 Windows 7 x64 和 Linux x64,没有安装器。
- 把发布包解压到顺手的位置,解压出的目录就是全部文件。
- Windows 双击
Umi-OCR.exe,Linux 运行umi-ocr.sh。主窗口弹出后,界面语言跟随系统设置。 - 打开"截图OCR"标签页,在该页设置里确认截图快捷键(可随时改键),框选一块文字区域,按
Esc可取消。 - 识别完成后,左侧预览栏直接划选复制,或点右侧对应记录,文字进剪贴板。
想换界面语言、主题,或加桌面快捷方式、开机自启,去"全局设置"标签页操作。
临时取字:框选屏幕上的代码,复制时保留缩进
如果你的目标是代码截图,先把右侧设置里的排版解析切到单栏-保留缩进。原因:OCR 引擎只负责认字,文字块按什么顺序拼回去由排版解析方案决定;默认的"多栏-按自然段换行"面向普通文档,套在代码上会把缩进拍平。
做法:
- 在"截图OCR"页框选代码区域。
- 右侧"设置"面板中,排版解析选单栏-保留缩进。
- 识别完成后点这条记录复制。
验证方法:把结果贴进 IDE 或 Markdown 编辑器,缩进层级与原图一致、没有多余空格,就通过了。
Umi-OCR 离线OCR的截图OCR页面:右侧设置可切换排版解析方案,左侧预览栏支持划选文字
记录面板还允许划选多条记录批量复制,右键可以复制、删除单条或清空全部:
识别记录面板:右键菜单可复制单条记录、删除或清空全部记录
发票与扫描图整夹转文字:几百张图片一次出Excel
手里有整文件夹的扫描单据或照片时,走"批量OCR"标签页:点"选择图片"或直接把文件夹拖进去,几百张一次导入,没有数量上限。
- 输入图片格式:
jpg / jpe / jpeg / jfif / png / webp / bmp / tif / tiff - 输出格式勾选:
txt / jsonl / md / csv (Excel) - 点"开始任务"后,左侧列表逐张显示耗时与置信度,任务结束得到每个文件对应的输出
验证方法:抽 3 张图对比预览和输出文本,置信度(0~1)低于0.8的几张重点人工核对。
两个高频问题:
- 水印怎么整体剔除:每张图固定位置有水印或 LOGO 时,从右侧设置进入忽略区域编辑器,按住右键画矩形框住它。只有完整落在框内的文本块会被丢弃,框画得稍微大一点更安全。
- 大图小字认错:到"设置 → 文字识别 → 限制图像边长"调高数值。默认
960会先把大图压缩,小字容易糊,改2880或4320。
批量OCR页面:左侧是待识别图片列表(含耗时、置信度),右侧是识别记录
扫描版PDF转双层可搜索文档:原图不变,文字可搜
扫描件转可搜索文档,打开"文档识别"标签页(v2.1.4 及以上),把文档拖进去。支持格式:pdf / xps / epub / mobi / fb2 / cbz,同样可设忽略区域排除页眉页脚。
产物是双层可搜索PDF:原图在底下,识别出的文字藏在上层,能搜能选,版面不损失。验证方法:打开生成的 PDF 按Ctrl+F搜一个只出现在正文里的词,能直接跳到对应页,说明文字层写对了。
自动化接入:一行命令或HTTP接口把识别挂进流水线
想把 Umi-OCR 放进定时任务、打包脚本或自己的 Web 服务,有命令行和 HTTP 两个口子,都依赖软件内的 HTTP 服务。
- 先到"全局设置"确认 HTTP 服务已允许,主机保持"仅本地",默认端口
1224。 - 命令行走法(
umi-ocr是Umi-OCR.exe的简写),最常用的三条:
umi-ocr --screenshot --clip umi-ocr --path "D:/docs" --output "结果.txt" umi-ocr --qrcode_read "D:/code.png"- HTTP 走法:先
GET http://127.0.0.1:1224/api/ocr/get_options查参数定义,再POST http://127.0.0.1:1224/api/ocr提交 base64 图片。请求体是 JSON,base64字段放图片编码,options字段放语言模型、排版解析等选项;文档识别、二维码各有成套接口。
验证方法:命令行任务跑完,文字出现在剪贴板或你指定的文件里;浏览器打开get_options能看到 JSON 参数定义。如果没反应,多半是 HTTP 服务没开,回"全局设置"查一下。
另有一个约定:命令行任务沿用"截图OCR"标签页的参数设定。不希望任务时弹出主窗口,就在那个标签页里关掉对应选项。
全局设置页:可切换语言与主题、添加桌面快捷方式与开机自启,并查看 HTTP 服务开关
参数与故障速查
常用参数
| 参数 | 默认值 | 何时改 | 为什么改 |
|---|---|---|---|
| 排版解析 | 多栏-按自然段换行 | 识别代码截图时 | 换"单栏-保留缩进",保留缩进与行内空格 |
| 限制图像边长 | 960 | 大图小字识别不准时 | 调高到 2880 或 4320,避免图片先被压缩 |
| 语言/模型库 | 简体中文 | 内容为纯英文、纯代码时 | 换models/config_en.txt,减少怪字符 |
| OCR引擎插件 | Rapid-OCR(自带) | 精度或速度不满足时 | 在全局设置里切换,日常使用保持默认即可 |
| HTTP服务 | 开启,仅本地,端口 1224 | 命令行/接口无响应时 | 确认已允许且主机为"仅本地" |
界面改动会自动存进UmiOCR-data/.settings(ini 格式),也可以手动改,改完执行umi-ocr --reload重新加载。
问题排查
| 现象 | 原因 | 处理 |
|---|---|---|
| 识别顺序错乱、读不通 | 排版解析方案与图片排版不匹配 | 换方案;代码选"单栏-保留缩进" |
| 大图里的小字认错 | 边长限制 960 先压缩了图片 | "限制图像边长"调到 2880 以上 |
| 水印、LOGO 文字混进结果 | 水印里的文本块被一起识别 | 批量页忽略区域把水印整块框住 |
| 命令行 / HTTP 没反应 | HTTP 服务没开 | 全局设置里允许 HTTP 服务,主机选"仅本地" |
下一步去哪儿
- 命令行手册:范围截图、粘贴图片、二维码与输出重定向的完整指令
- HTTP接口手册:图片识别、文档识别、二维码接口的完整参数
- 更新日志:各版本功能变化
Python 源码在UmiOCR-data/py_src/目录里,想弄清识别任务怎么调度的话,可以直接翻。
【免费下载链接】Umi-OCROCR software, free and offline. 开源、免费的离线OCR软件。支持截屏/批量导入图片,PDF文档识别,排除水印/页眉页脚,扫描/生成二维码。内置多国语言库。项目地址: https://gitcode.com/GitHub_Trending/um/Umi-OCR
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考