Umi-OCR 从零到一保姆级教程:免费离线搞定截图、批量图片与 PDF 文字识别
【免费下载链接】Umi-OCROCR software, free and offline. 开源、免费的离线OCR软件。支持截屏/批量导入图片,PDF文档识别,排除水印/页眉页脚,扫描/生成二维码。内置多国语言库。项目地址: https://gitcode.com/GitHub_Trending/um/Umi-OCR
你有没有遇到过这样的尴尬时刻:课件截图里的公式复制不出来,只能对着屏幕一个字一个字敲;同事发来一份扫描版合同,想改个错别字都得重新打一遍;图书馆下载的论文 PDF,整篇都是图片,连检索都做不到。别急着买那些动不动就收费的在线 OCR,其实有一款免费、开源、完全离线的文字识别工具,能把这些麻烦一次全解决——它就是Umi-OCR。
Umi-OCR 是一款免费开源的离线 OCR 软件,内置多国语言识别库,支持截图识别、批量图片识别、PDF 文档识别、二维码扫描与生成,解压即用、无需联网,是个人办公和效率达人的"文字搬运工"。
这篇教程不绕弯子,我按自己这几年的使用心得,从"第一次打开软件"讲到"写代码自动调用接口",帮你把它的潜力全部榨干。😎
一、先看它到底能干什么:一张表看懂核心功能
在动手之前,先花 30 秒了解 Umi-OCR 的能力边界。它不是一个只会"截图出字"的小工具,而是一套完整的文字处理方案:
| 功能模块 | 支持格式 / 能力 | 典型使用场景 |
|---|---|---|
| 截图识别 | 快捷键唤出截屏框,框选即出字 | 网页、视频、软件界面里的文字 |
| 批量识别 | jpg/png/webp/bmp/tiff 等 8 种图片格式 | 几百张图片一次性转文本 |
| 文档识别 | pdf/xps/epub/mobi/fb2/cbz 六种格式 | 扫描版 PDF 提取文字、生成双层可搜索 PDF |
| 二维码 | 扫码 + 生成,支持 19 种码制协议 | 批量解析码、生成码图片 |
| 接口能力 | 命令行、HTTP API | 对接自动化流程、程序调用 |
看到没有,从一张截图到一整本扫描书,它都能处理。而这一切都发生在你的电脑本地,不联网、不传云端、不泄露隐私。这一点对处理合同、论文、病历等敏感文档来说,简直是刚需。🔒
二、最快上手路径:从下载到出字只需 3 分钟
Umi-OCR 是绿色软件,不需要安装,下载压缩包解压就能跑。完整流程只有三步:
- 下载发布包:从项目发布页获取
.7z或.7z.exe自解压包。自解压包适合没装解压软件的电脑,双击自己解压。 - 解压并启动:解压后进入文件夹,双击
Umi-OCR.exe(Windows)或运行umi-ocr.sh(Linux)。首次启动会自动按系统语言切换界面。 - 按下快捷键截屏识别:切到"截图 OCR"标签页,按下默认截图快捷键,框选屏幕上任意文字区域,识别结果立刻出现在右侧。
第一次打开软件,你会看到类似这样的界面——标签页式的布局,左侧是功能页,右侧是设置与记录面板:
Umi-OCR 的批量识别页:左侧文件列表、中间进度条、右侧设置与记录,一次可塞入几百张图片。
如果你只是想"截个图、出个字",到这一步已经够用了。但别急着关掉这篇文章——后面这些技巧,才是让它从"能用"变成"好用"的关键。
三、新手任务:把截图识别调到最顺手
截图识别是 Umi-OCR 使用频率最高的功能,但它默认的排版输出未必符合你的习惯。这里分享三个我踩过坑之后总结的调整项。
3.1 排版解析方案:别让识别结果"乱成一锅粥"
OCR 引擎吐出来的原始文字,经常是零散的文本块,顺序和换行都不符合阅读习惯。Umi-OCR 内置的排版解析功能专门解决这个问题,在截图页右侧的"设置 → 文本后处理"里可以切换。
用白话解释:排版解析就是"智能排版助手",它负责判断哪些文字属于同一段落、哪些是标题、哪些需要换行。预设方案有 8 种,新手先记住最常用的三个:
- 多栏-按自然段换行:默认方案,自动识别多栏布局(比如报纸、论文双栏),按自然段规则换行,适合 90% 的场景;
- 单栏-保留缩进:识别代码截图的神器,保留行首缩进和行中空格,代码粘贴出来还是整齐的;
- 不做处理:OCR 引擎的原始输出,每句话都换行,适合你只需要"裸文本"的时候。
这几个方案都能自动处理横排和竖排(从右到左)的文本,前提是识别引擎本身支持对应语言。
3.2 截图识别的两个隐藏效率点
第一,别处复制的图片也能识别。看到网上文章里一张没法复制的图?直接复制图片,在 Umi-OCR 窗口里Ctrl+V粘贴,立刻识别。这招比截图更快。
第二,识别结果支持划选复制。右侧记录栏里可以鼠标划选多个记录,一次性复制,做笔记摘抄时非常顺手。截图页左侧的图片预览栏也能直接划选图片局部复制。
来看看实际效果:下面这张图是截图识别代码片段时的预览,左侧红色框选的是原图里的 Python 代码,右侧是识别出的文字,逐行对齐、缩进完整:
识别预览:左侧原始截图,右侧识别结果,代码类内容配合"保留缩进"方案还原度极高。
3.3 图像边长限制:一个小参数,影响识别的准与快
在文字识别设置里有一个"限制图像边长"参数(limit_side_len),默认 960。它的作用是把超长超大的图片压缩后再识别,从而提速。但如果你的图片文字很小、放大后反而更清楚,可以把数值调高到 2880 甚至更高。
一句话原则:文字密集、字体小就调高;追求速度、图片普通就保持默认。调高会稍微增加内存占用和耗时,但对识别精度有帮助。
四、进阶任务:批量图片与"忽略区域"的妙用
如果你手头有几十张甚至几百张图片要转文字,一张张截图显然不现实。这时候就该用批量 OCR标签页了。
4.1 批量识别的基本操作
把图片(或整个文件夹)拖进左侧列表,支持 jpg/png/webp/bmp/tif 等格式,没有数量上限。点击"开始任务",软件会并行处理,进度条实时显示。任务完成后,识别结果可以保存为txt、jsonl、md、csv(Excel)四种格式,其中 csv 格式能直接丢进 Excel 做后续分析。
批量页还支持一个实用功能:任务完成后自动关机或休眠。晚上睡觉前丢几百张图进去,第二天早上直接收成果,省电又省心。😴
4.2 忽略区域:不只是去水印
"忽略区域"是批量识别里一个容易被低估的功能。它的原理很简单:在图片上画矩形框,框内区域整块忽略。最常见的用法是去掉水印,但它还有两个高价值场景:
- 去除页眉页脚:批量处理扫描版论文时,每页的期刊名、页码、日期都会混进识别结果,用忽略区域框掉,输出干净得多;
- 排除干扰元素:比如图片角落的 LOGO、时间戳、拍摄参数信息。
操作时在批量页右侧设置里进入忽略区域编辑器,按住右键绘制矩形框即可。注意一个小细节:忽略区域是按"整个文本块"生效的,不是按单个字符,所以框尽量画大一些,确保完全包裹水印可能出现的位置。
4.3 实战案例:把 1000 页扫描合同变成可检索档案
拿企业场景举个具体的例子。假设某律所需要把历史扫描版合同数字化,这批合同的特点是:每页左上角有律所 LOGO、页脚有页码、正文为单栏但夹杂手写批注。
用 Umi-OCR 的处理方案是:
- 全部 PDF 先转成图片导入批量识别(或者直接用后面的文档识别功能);
- 配置忽略区域框掉左上角 LOGO 和页脚页码;
- 排版方案选"单栏-按自然段换行";
- 输出 csv + txt 双格式,csv 供 Excel 建索引,txt 供全文检索。
这样处理后,原本无法检索的扫描件变成了可搜索的文本档案,后续按关键词查案卷只需要几秒钟。这就是工具组合起来的力量。
五、高级玩法:PDF 文档识别与双层可搜索 PDF
如果说截图和批量识别是"开胃菜",那PDF 文档识别就是 Umi-OCR 的"主菜"。它依托 PyMuPDF 解析引擎,能直接处理 PDF、EPUB 等六种格式的文档,并且内置四种内容提取模式:
| 提取模式 | 工作原理 | 适用场景 |
|---|---|---|
| 混合模式 | 一页里既有原生文本又有扫描图时,各取所长 | 大部分 PDF,推荐首选 |
| 整页强制 OCR | 整页当作图片重新识别 | 扫描质量差、需要最高还原度的文档 |
| 仅图片 OCR | 只识别页面里的图片区域 | 图文混排、图片为主的文档 |
| 仅文本拷贝 | 不 OCR,只提取 PDF 自带的文本层 | 本来就是文字版 PDF,快速拿文字 |
对扫描版 PDF,最推荐的功能是输出为双层可搜索 PDF。用大白话说:这种 PDF 的"底层"是扫描图片(保证排版原样),"上层"叠加了一层看不见的识别文字。结果就是——眼睛看到的是原版扫描件,但鼠标可以选中、搜索、复制文字。这在归档、论文管理场景里简直无敌。
文档识别页还支持指定页数范围(比如1-5,10-15)、忽略区域(排除页眉页脚)和加密文档解密(提供密码即可),细节做得很到位。根据项目更新日志,从 v2.1.0 加入 PDF 识别,到 v2.1.5 修复页面旋转问题、补齐单层 PDF 文本写入,这个模块一直在稳步打磨。
六、疑难杂症 FAQ:六个高频问题的解决思路
Q1:识别结果顺序乱了,一段话被拆得七零八落?调整"排版解析方案",多栏文档选"多栏-按自然段换行",代码截图选"单栏-保留缩进"。
Q2:水印文字总是混进结果里?用"忽略区域"框掉水印位置,记住框要大一些,且只对整块文本生效。
Q3:超大长图识别特别慢?在批量页设置里调高"限制图像边长"到 2880,图片会先被压缩再识别,速度立刻提升。
Q4:界面出现闪烁、错位?进"全局设置 → 界面和外观 → 渲染器",切换到不同的渲染方案,或直接关闭硬件加速。
Q5:想改界面语言/主题?全局设置里选"语言/Language",支持繁中、英语、日语等;主题有多个亮/暗方案可选。
Q6:任务中途想暂停/恢复?v2.1.2 起批量任务支持暂停,只要不退出软件,待机/休眠后也能恢复任务。
全局设置页长这样,语言、主题、快捷键、开机自启都在这里配置:
全局设置页:语言、主题、渲染器、开机自启等基础配置都集中在这里。
七、效率进阶:命令行与 HTTP 接口,把 OCR 变成自动化流水线
如果你只把 Umi-OCR 当图形工具用,那它已经值回票价。但它的另一半价值,藏在命令行和HTTP 接口里——这意味着你能把它塞进脚本、对接业务系统。
7.1 命令行:一键截图、批量出字
命令行入口就是主程序Umi-OCR.exe,在终端里调用即可。常用指令如下:
# 鼠标框选截屏识别 umi-ocr --screenshot # 指定屏幕和区域自动截图(无需鼠标操作) umi-ocr --screenshot screen=0 rect=50,100,300,200 # 识别指定图片或整个文件夹(支持多个路径) umi-ocr --path "D:/img1.png" "D:/img2.png" "D:/image/test" # 识别结果输出到文件(覆盖/追加) umi-ocr --screenshot --output result.txt umi-ocr --screenshot --output_append result.txt # 识别并生成二维码 umi-ocr --qrcode_read "D:/qrcode.png" umi-ocr --qrcode_create "https://example.com" "D:/out.png" 256小技巧:指令支持前几个字母简写,比如--screenshot可写成--sc;对大多数系统还能省略.exe后缀。命令行与图形界面的参数是联动的——OCR 语言、排版方案等沿用"截图 OCR"标签页的设置。
7.2 HTTP 接口:让程序替你干活
软件默认在127.0.0.1:1224开放本地 HTTP 服务,支持图片 OCR、PDF 文档识别、二维码三大类接口。图片识别最简单,直接传 Base64 即可:
import requests, base64 with open("test.png", "rb") as f: img_b64 = base64.b64encode(f.read()).decode() resp = requests.post("http://127.0.0.1:1224/api/ocr", json={ "base64": img_b64, "options": { "ocr.language": "models/config_chinese.txt", # 简体中文 "tbpu.parser": "multi_para", # 排版方案 "ocr.cls": False # 方向纠正 } }) print(resp.json()["data"])文档识别的流程稍长但更强大:先上传文件拿任务 ID → 轮询任务状态 → 生成目标文件(如双层 PDF)→ 下载 → 清理任务。项目自带 Python 和 Web 的完整示例代码,位置在 docs/http/ 目录下,照着抄就能跑通。完整的接口参数说明见 api_doc.md 和 api_ocr.md,命令行进阶玩法见 docs/README_CLI.md。
提醒一句:HTTP 接口对并发支持一般,建议顺序调用;大批量调用偶尔报
ECONNREFUSED之类的错,重新发一次请求即可,不影响整体流程。
7.3 多语言与本地化:跨国团队也能用
Umi-OCR 的界面和识别模型都支持多国语言。界面语言在全局设置里切换,识别模型则在插件设置里选择。它的本地化工作通过 Weblate 平台协作完成,已覆盖英语、日语、繁中、韩语、俄语、葡萄牙语、泰米尔语等:
多语言界面:同一款软件可以切换中、日、英等多种界面语言,识别模型也随插件提供多种语言库。
八、性能调优速查:按你的电脑配置选参数
不同配置的电脑,识别体验差异很大。我根据实测给出三档推荐配置,直接抄作业即可:
| 硬件配置 | 图像边长限制 | 并行任务数 | 方向纠正(cls) | 备注 |
|---|---|---|---|---|
| 低配(4GB 内存) | 960 | 1 | 关闭 | 优先保证不卡顿 |
| 标准(8GB 内存) | 1920 | 2 | 按需开启 | 日常使用最均衡 |
| 高性能(16GB+) | 2880 | 4 | 开启 | 大批量任务的效率之选 |
其中"方向纠正"(ocr.cls)是专门处理倾斜、倒置扫描件的开关,开启后会牺牲一点速度换取识别准确率,适合扫描质量参差不齐的文档。
写在最后:它凭什么值得留在你的工具箱里
回看整个 Umi-OCR,它的核心优势可以浓缩成三句话:
- 免费开源 + 完全离线:隐私安全有保障,个人与商用皆可,不用看云服务脸色;
- 能力闭环:截图、批量、PDF、二维码全覆盖,从零散图片到整本扫描书一个工具搞定;
- 接口开放:命令行与 HTTP API 让它从"用户工具"升级为"系统组件",自动化潜力巨大。
如果你刚接触它,我建议按这个顺序进阶:先熟练截图识别和排版方案,再上手批量 + 忽略区域,然后攻克 PDF 双层输出,最后尝试用命令行或 Python 脚本把它接进自己的工作流。每一步解锁的能力,都会让你在处理文字时多一分从容。
想更深入了解的话,项目自带的文档都是干货:更新日志 CHANGE_LOG.md 记录了每个版本的功能演进,命令行手册 docs/README_CLI.md 和 HTTP 接口文档 docs/http/README.md 是开发者必读。此外,插件机制支持切换不同的离线 OCR 引擎(如 PaddleOCR、RapidOCR),这又是另一个值得探索的深水区了。祝你把"文字搬运"这件事,彻底交给机器。🚀
【免费下载链接】Umi-OCROCR software, free and offline. 开源、免费的离线OCR软件。支持截屏/批量导入图片,PDF文档识别,排除水印/页眉页脚,扫描/生成二维码。内置多国语言库。项目地址: https://gitcode.com/GitHub_Trending/um/Umi-OCR
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考