扫描件PDF文字识别:用Umi-OCR批量OCR手把手
【免费下载链接】Umi-OCROCR software, free and offline. 开源、免费的离线OCR软件。支持截屏/批量导入图片,PDF文档识别,排除水印/页眉页脚,扫描/生成二维码。内置多国语言库。项目地址: https://gitcode.com/GitHub_Trending/um/Umi-OCR
你打开一份扫描版合同,选中一句话复制粘贴出来,得到的是一堆乱码,甚至什么都没有。原因很简单:扫描件里的"字"其实全是图片,必须做一次 PDF 文字识别(OCR),才能变成能选中的真文字。Umi-OCR 是一款免费、开源、离线的 OCR 软件,解压就能用,不安装、不联网。读完这篇,你能把 30 份扫描版 PDF 拖进去变成可搜索的文本,顺便学会排除水印、还原排版。
一、先花30秒判断:它是不是你要的批量识别工具
| 手动重敲 | 付费在线 OCR | Umi-OCR | |
|---|---|---|---|
| 成本 | 一页几分钟,30 页到崩溃 | 按月付费,文件逐个上传 | 免费、开源 |
| 联网 | 不需要 | 文件传到别人服务器上 | 全程离线,文件不出本机 |
| 批量能力 | 靠手 | 多数工具限文件数/大小 | 一次几百个文件,没有数量上限 |
- 适合谁:经常处理扫描版合同、教材、纸质 PDF,又需要把文件留在本地的你。
- 不适合谁:指望在手机上"拍张照片三秒出字"的人。它是桌面程序,支持 Windows 7(64位)和 Linux x64,出门在外帮不上忙。
二、5分钟跑通免安装配置:批量识别的最短路径 ✅
- 解压启动。项目仓库里直接带了发布包(如
Umi-OCR_Rapid_v2.1.5.7z),解压到不含中文的路径下,双击Umi-OCR.exe。你会看到带"截图OCR""批量OCR""文档识别""全局设置"等标签页的窗口,比如"截图OCR"标签页就是下面这样,可以直接划选截图里的文字复制:
- 打开"文档识别"标签页,拖入扫描版 PDF。它支持
pdf, xps, epub, mobi等格式;如果你手里是一堆纯图片,就换"批量OCR"标签页。你会看到窗口里的文件列表出现你拖入的文档。 - 看一眼右侧设置,点"开始任务"。想保留原排版存档,就选输出"双层可搜索PDF";只要纯文字能搜,单层纯文本 PDF 也够用。你会看到进度条显示处理到第几个文件、耗时多少,任务完成后输出目录里出现结果文件。
到这里,你已经把扫描版 PDF 变成了能搜索、能复制的文本。
三、核心功能拆解:忽略区域、排版解析与双层PDF输出
处理水印:忽略区域,让页眉页脚别混进来
批量识别扫描论文时,每页重复的页眉、角标水印全混进识别结果,把排版搅成一团。
在"批量OCR"或"文档识别"页右侧设置里进入忽略区域编辑器,在预览图上按住右键,把水印位置框起来,可以画多个框,一套框会应用到任务的所有页面。
任务跑完,输出文本里的水印和页眉消失了,正文干干净净。
顺带说一句,只有完全落在框内的整个文本块才会被忽略,所以框宁可画大、把水印可能出现的位置都盖住,也别画得紧紧包住。
理顺排版:排版解析方案,让多栏文档读得通
识别多栏的报刊、或者代码截图时,输出的文字顺序是乱的,一行话拆得到处都是。
在页面设置里找到"OCR文本后处理-排版解析方案":多栏文档选"多栏-按自然段换行",代码截图选"单栏-保留缩进"。
输出的文字按原版面的顺序和段落排好,代码的缩进也保住了。
注意,这些方案都能自动处理横排和竖排,但竖排文字还需要 OCR 引擎本身支持才行。
强制识别:整页强制OCR,糊掉的页面不怕了
扫描页歪斜模糊,或者原 PDF 自带的文本层是坏的,直接拷原文本就得不到东西。
在"文档识别"页右侧设置里,把文档内容提取切换为"整页强制OCR"。
整页由引擎重新识别,输出的是纯靠图像认出来的文字,坏文本层不再捣乱。
顺带说一句,如果 PDF 是纯文字没有图片,根本不用整页 OCR,直接提取原有文本秒出结果,还省 CPU。
四、跑通之后才会注意到的 3 个调优细节
- 长图、超长截图识别乱掉→ 图像边长超出了处理上限 → 在"页面的设置→文字识别→限制图像边长"里把数值调高,比如从 1920 提到 2880。
- 界面截屏闪烁、UI 错位→ 默认显卡加速渲染在你机器上兼容性差 → 进"全局设置→界面和外观→渲染器",切换到别的渲染方案或关闭硬件加速。
- 大批量排队时人走不开→ 页面设置里有"任务完成后自动关机/待机" → 打开它,任务跑完电脑自动关机或休眠,不用陪跑。
五、高频翻车现场:有人问,我来答 ❓
有人问:PDF 里明明能选中文字,为什么复制出来是乱码?因为那层"文本"是坏的,真正的字还压在图片里。切成"整页强制OCR"让引擎整页重认一遍就好——这是 PDF 文字识别最反直觉的一点:能不能复制才作数,别信"看起来有文本层"。
有人问:我把扫描分辨率提到 4000 像素,怎么识别又慢又差?分辨率不是越高越准。超大图像会引入噪声、拖慢速度,边长控制在 1920~2880 像素之间就够了。
有人问:只想识别页面上几行字,非得整份文档都处理吗?不用,打开"截图OCR"标签页,框选那几行复制走就行,其实不用走整份文档的批量流程,更不用手动重敲。
如果你是开发者,想从脚本里调用它,也不用点鼠标——命令行入口就是主程序本身,把文件路径传给它即可:
umi-ocr --path "D:/scan/contract1.pdf"这行是在干嘛:把文件路径交给后台程序,它自动完成识别并把结果存进输出目录。
现在你自己就能完成 PDF 文字识别了:从拖入扫描文档、排除水印,到拿到双层可搜索 PDF,全都顺手。想再深入一点,docs/README_CLI.md 写了完整的命令行用法,docs/http/README.md 是 HTTP 接口手册。下次再遇到"只可看不可搜"的 PDF,直接打开它,把这件苦差事交出去就行。
【免费下载链接】Umi-OCROCR software, free and offline. 开源、免费的离线OCR软件。支持截屏/批量导入图片,PDF文档识别,排除水印/页眉页脚,扫描/生成二维码。内置多国语言库。项目地址: https://gitcode.com/GitHub_Trending/um/Umi-OCR
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考