尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

半天处理完几百页扫描件:Umi-OCR离线批量转双层PDF实战记录

半天处理完几百页扫描件:Umi-OCR离线批量转双层PDF实战记录 半天处理完几百页扫描件Umi-OCR离线批量转双层PDF实战记录【免费下载链接】Umi-OCROCR software, free and offline. 开源、免费的离线OCR软件。支持截屏/批量导入图片PDF文档识别排除水印/页眉页脚扫描/生成二维码。内置多国语言库。项目地址: https://gitcode.com/GitHub_Trending/um/Umi-OCR前阵子帮表哥整理一批纸质档案的扫描件几百页PDF既不能复制也不能搜索一页页对照录入让人崩溃。后来我换用开源免费的离线OCR软件Umi-OCR用它的文档识别功能批量转出了可搜索的双层PDF一下午就交付了。这篇笔记把我完整的操作路径、关键参数和翻车记录都整理出来你照着走就能独立跑通全流程。动手前先做决定你要的到底是哪种可搜索文档很多人一上来就搜PDF怎么转Word但扫描件的需求其实分好几类。动手前我先把目标想清楚了免得白干你想要的底层原理结果能搜索、能复制文字在原图上叠加不可见的文字层双层PDF只要文字内容OCR后导出纯文本txt/Word版式全丢想直接编辑文字需要真正的排版重构属于另一个产品方向扫描PDF的本质是一堆图片的合订本文字烙在像素里所以复制、搜索全都使不上劲。双层PDF的思路是底层保留原始扫描图像保证观感和打印效果不变上层叠加一层透明文字让搜索和复制瞬间活过来——你看到的还是原图但电脑已经认得它了。这里要提醒你一句免得期望落空双层PDF不等于可编辑文档。它的文字层是看不见的双击不会有光标让你改字它解决的是检索与复制问题。想改内容得走另一套流程别混为一谈。开工前的两分钟先认识这个免安装的工具工具本身零门槛从发布页下载 Umi-OCR_Rapid_v2.1.5.7z 压缩包解压后双击 Umi-OCR.exe 就能跑没有安装向导、没有环境配置在别人的电脑上也能即用即走。Umi-OCR 的识别引擎是本地插件RapidOCR 和 PaddleOCR 两种可选全程离线运行。这一点对我特别关键——档案内容敏感绝不能上传到任何云端识别服务这也是它区别于一堆在线转换工具的核心卖点。软件主界面是标签页结构常用的是五个截图OCR、批量OCR、文档识别、二维码、全局设置。做双层PDF要用的就是文档识别这一页它的操作台和批量OCR同款布局左侧是文件列表右侧是设置面板和识别记录中间靠下的开始任务按钮负责点火进度条会实时显示处理到第几页。第一份成果的完整路线从拖入文件到验收通过整条链路很短我拆成五步每一步都交代一下为什么这么做。第一步把文件拖进列表。文档识别页的左侧支持批量拖入一次塞几十个文件毫无压力。除了PDF它还吃 epub、mobi、cbz 等电子书格式等于顺手解决了其他格式的阅读需求。第二步设置输出格式为双层PDF。在右侧设置面板的保存格式里选双层PDF。如果只想提取文字、不在乎版式也可以选单层纯文本PDFv2.1.2 起支持。第三步把识别语言切换到文档对应语种。中文资料选简体中文外文资料选对应语言软件内置了多国语言库繁体、日、韩、俄语都能应对。中英混排的文档请明确选择包含英文的配置准确率会有肉眼可见的提升。别小看这一步语言选错了识别结果会断崖式变差。第四步顺手处理页眉页脚强烈建议做。很多文档顶部有页眉、底部有页码这些杂讯会混进正文。点开忽略区域用鼠标框出页眉页脚的位置还能限定生效的页码范围。这一步能让导出的文本整洁度上一个台阶。第五步开始任务并验收。点击开始任务右侧显示逐页进度单页通常一两秒完成。完成后去输出目录打开生成的PDF做两件事按 CtrlF 搜一个文档里的词验证文字层真的可搜索随机抽几页目测图像清晰度和原扫描件对比。像上图这样识别结果能和原图逐行对照哪里识别错了当场就能发现不用等全流程跑完才返工。三个能让结果脱胎换骨的设置不少人拿到能用的结果就收手了其实右侧面板里还有几个细节选项花一分钟调一下体验差距很大。排版解析方案决定文本是能读还是好读。默认的多栏-按自然段换行会自动识别双栏布局、还原正确阅读顺序多数场景够用。遇到特殊情况可以换方案扫描版的论文、报纸 → 双栏类方案自动分栏代码截图类文档 →单栏-保留缩进行首缩进和行中空格都保得住导出的代码几乎不用二次整理。图像压缩按体积需求取舍。对文件体积敏感的场合把压缩质量调到 80% 左右通常是个平衡点不敏感就保持默认画质还原最好。OCR页数范围用于精准分段。页数起始/结束可以只处理中间某几页跳过无用的封面和空白页配合忽略区域的页码范围超长文档也能精细地分段处理。批量场景把整套流程交给HTTP接口当文件多到要用批次来计量时就该上自动化了。Umi-OCR 提供完整的HTTP接口默认端口 1224流程是固定的四步上传文件 → 轮询任务状态 → 生成目标文件并获取下载链接 → 清理任务。下面这段Python代码可以直接改着用import requests, time BASE http://127.0.0.1:1224 # 1. 上传PDF可附带语言、忽略区域等参数 with open(scan.pdf, rb) as f: r requests.post(f{BASE}/api/doc/upload, files{file: f}) task_id r.json()[data][id] # 2. 轮询状态等待识别完成 while True: r requests.post(f{BASE}/api/doc/result, json{id: task_id}) if r.json()[is_done]: break time.sleep(1) # 3. 指定输出为双层可搜索PDF r requests.post(f{BASE}/api/doc/download, json{ id: task_id, file_types: [pdfLayered] }) url r.json()[data] # 4. 下载结果并清理任务 requests.get(f{BASE}{url}) requests.get(f{BASE}/api/doc/clear/{task_id})几个使用细节要提前知道需要在全局设置里允许HTTP服务默认开启要开放局域网访问就把主机切到任何可用地址结果格式除双层PDF外还支持 txt、jsonl、csv方便对接下游系统后端组件并发能力有限尽量串行调用别开多线程并发任务完成后不手动清理也没关系24小时后会自动清理。完整的接口文档在 docs/http/api_doc.md可运行的示例在 docs/http/api_doc_demo.py。如果你打算基于源码做二次开发可以 clone 仓库研究内部实现git clone https://gitcode.com/GitHub_Trending/um/Umi-OCR。我这次踩过的坑以及对应的排查思路实战不可能一帆风顺我把自己踩过的四个坑原样记下来你遇到同款可以直接对号入座。⚠️坑一转换后文本和图像位置错位。老版本解析带旋转的页面时确实出现过坐标问题v2.1.2 集中修复过一批版本偏旧就先升级到 v2.1.5 再重试问题依旧检查文档是否含旋转页面或改用整页强制OCR模式。坑二加密或损坏的PDF让任务一直卡住。加密PDF要在参数里填写文档密码损坏文件则可能让任务一直停在等待状态。遇到异常先看日志——v2.1.5 起日志会保存到 UmiOCR-data/logs 目录能帮你定位到具体是哪一页出了问题。坑三大批量任务把内存吃满。识别引擎默认把内存占用控制在系统总内存的一半以内一般够用但低配机器建议在全局设置里调低引擎线程数和内存上限宁慢勿崩。坑四误以为HTTP接口可以随便并发。长时间、大批量连续调用时有小概率冒出ECONNREFUSED之类的报错重发一次请求就好不必惊慌——只要后台工作线程没崩这些小问题不会持续影响调用。下一步可以玩什么到这儿你已经掌握了一套完整的扫描件数字化工作流从单文件转换、参数调优到接口自动化全程离线完成。接下来还能顺着这几条线继续探索命令行调用截图、识图、识别二维码都能通过命令行触发脚本化程度更高见 docs/README_CLI.md截图OCR日常处理网页截图、聊天记录图片打开截图OCR标签页按快捷键就能识别结果像下图一样和原文对照着展示二维码工具Umi-OCR 内置扫码和生成二维码功能支持19种码制算是意外的加分项。技术更迭很快但保留图像、叠加文字的双层PDF思路依然是档案数字化的主流解法。希望这篇笔记能帮你把第一批扫描件顺利转起来——转完之后你多半会想为什么没早点动手。【免费下载链接】Umi-OCROCR software, free and offline. 开源、免费的离线OCR软件。支持截屏/批量导入图片PDF文档识别排除水印/页眉页脚扫描/生成二维码。内置多国语言库。项目地址: https://gitcode.com/GitHub_Trending/um/Umi-OCR创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表