news 2026/10/16 1:41:04

Umi-OCR:离线 OCR 三步上手,截图取字到批量识别全搞定

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Umi-OCR:离线 OCR 三步上手,截图取字到批量识别全搞定

Umi-OCR:离线 OCR 三步上手,截图取字到批量识别全搞定

【免费下载链接】Umi-OCROCR software, free and offline. 开源、免费的离线OCR软件。支持截屏/批量导入图片,PDF文档识别,排除水印/页眉页脚,扫描/生成二维码。内置多国语言库。项目地址: https://gitcode.com/GitHub_Trending/um/Umi-OCR

Umi-OCR 是一款免费、开源的离线 OCR 软件,截图取字、整文件夹批量识别、扫描版 PDF 转双层可搜索 PDF,全程不联网、不装环境,解压即用。截图页支持"排版解析"整理阅读顺序,批量页有"忽略区域"排除水印,文档识别页把扫描件变成能搜能选的文件。命令行和本地 HTTP 接口还留给脚本与定时任务调用。

先确认环境

项目要求
平台Windows 7 x64、Linux x64
获取方式发布包.7z压缩包或.7z.exe自解压包;也可git clone https://gitcode.com/GitHub_Trending/um/Umi-OCR获取源码
运行要求无需安装、无需联网;界面语言自动跟随系统
内置引擎RapidOCR-json、PaddleOCR-json,多语言模型库随包内置

运行起来

  1. 解压发布包,Windows 双击Umi-OCR.exe,Linux 执行umi-ocr.sh。
  2. 预期现象:主窗口弹出,标签栏出现"截图 OCR""批量 OCR""文档识别""二维码""全局设置"。
  3. 界面语言不对就去"全局设置"切换,无需重启。

从屏幕截出一段文字

操作

  1. 打开"截图 OCR"标签页。
  2. 按页面设置的快捷键唤起截图,框住文字区域后松开鼠标;Esc随时取消。
  3. 识别完成后,点击右侧记录栏里那条带时间戳的结果即可复制;左侧预览栏里的文字也能直接划选。在别处复制好图片,也可以直接粘贴到这一页识别。

验收

  • ✅ 记录栏多出一条新记录,粘贴到记事本,文字与图中一致。
  • 预览栏文字可划选,说明文本层已经生成。

避坑

  • ⚠️ 代码截图的缩进被压平 → 排版解析默认是"多栏-按自然段换行",面向普通文档 → 把排版解析改成"单栏-保留缩进",行首缩进和行内空格就能保留。
  • 竖排文字识别顺序怪 → 各排版方案都能自动处理横排和竖排,但竖排还需要 OCR 引擎本身支持。

一个文件夹几百张图,一次出结果

操作

  1. 打开"批量 OCR"标签页,选择图片,或直接拖入整个文件夹;一次几百张没问题,数量没有上限。
  2. 输入格式支持jpg / jpe / jpeg / jfif / png / webp / bmp / tif / tiff,输出勾选txt / jsonl / md / csv(Excel)。
  3. 图片里带固定水印或 LOGO 时,进右栏设置的忽略区域编辑器,按住右键画矩形把水印包进去,框画大一点。
  4. 长图、小字多的图,到"设置 → 文字识别"把"限制图像边长"调高。
  5. 点击开始,左侧列表逐张滚出耗时和置信度;跑完每个文件对应一份输出。

验收

  • ✅ 任务结束后,每张输入图都有对应输出文件。
  • 抽 3 张对比预览和结果;置信度(0~1)偏低的几张人工核对一遍。

避坑

  • ⚠️ 大图里小字认错 → 默认边长 960 会先把大图压缩 → 调到 2880 或 4320。
  • ⚠️ 水印文字混进结果 → 只有整块落在框内的文本会被丢弃,横跨框边的字块仍保留 → 忽略区域画大、画全。
  • 半夜跑大批任务 → 可开启任务完成后自动关机/待机,跑完自己收工。

扫描版 PDF 怎么出可搜索版本

操作

  1. 打开"文档识别"标签页,拖入文档,支持pdf / xps / epub / mobi / fb2 / cbz。
  2. 有页眉页脚的,设一个忽略区域把固定位置框掉。
  3. 开始任务。产物是双层可搜索 PDF:原图在下,识别文字在上;只要原文字,可改存单层纯文本 PDF。

验收

  • ✅ 打开产物按Ctrl+F,搜一个只出现在正文里的词,能直接跳到对应页,说明文字层写对了。
  • 能选中、复制出文字,版面排版没变。

避坑

  • ⚠️ 输出 PDF 搜不到字 → 保存类型选的不是双层可搜索 PDF → 在保存设置里勾选对应类型再跑。
  • 扫描件页眉页脚混进文本 → 忽略区域没画到该位置 → 按版面对齐框住页眉页脚区域。

把识别能力挂进脚本和定时任务

操作

  1. 进"全局设置"确认 HTTP 服务已允许(默认开启),主机保持"仅本地",默认端口1224。命令行和 HTTP 接口都依赖这个服务。
  2. 命令行直接用,入口就是主程序,umi-ocr是Umi-OCR.exe的简写:
umi-ocr --screenshot --clip umi-ocr --path "D:/docs" --output "结果.txt"
  1. --path可以传文件夹,会递归识别里面所有图片,也支持多路径。
  2. HTTP 两步走:先GET http://127.0.0.1:1224/api/ocr/get_options拿全部参数定义,再POST http://127.0.0.1:1224/api/ocr提交识别,请求体base64放图片编码、options放语言、排版解析等选项。PDF 有对应的上传、查询、下载接口。

验收

  • ✅umi-ocr --help能打印完整指令说明。
  • ✅ 浏览器访问get_options地址返回 JSON 参数表;POST 一次,返回code为100且data里有识别文本。

避坑

  • ⚠️ 命令行没有任何反应 → 九成是 HTTP 服务没开 → 全局设置里允许 HTTP 服务。
  • 系统管道>、|可能失效 → 运行环境限制 → 改用--output,或走"HTTP 转发命令行"接口。
  • 长任务偶发ECONNREFUSED报错 → 后端并发能力有限 → 不要并发调用,重发请求即可。

参数只动这几个

参数默认值什么时候改建议值
语言/模型库models/config_chinese.txt(简体中文)纯英文、纯代码文档models/config_en.txt等,见 get_options 返回值
排版解析方案multi_para(多栏-按自然段换行)代码截图要保留缩进;想整段不换行single_code(单栏-保留缩进)/multi_none
限制图像边长960长图、小字多的大图2880、4320或999999(无限制)
HTTP 端口1224和本机其他服务冲突全局设置里改成空闲端口

界面上的改动都会存进UmiOCR-data/.settings(ini 格式)。也可以直接手改这个文件,然后执行umi-ocr --reload重新加载(v2.1.5 及以上支持)。

出问题先查这里

现象多半原因处理办法
命令行截屏无反应HTTP 服务没开全局设置里允许 HTTP 服务,主机选"仅本地"
识别顺序错乱、读不通排版解析方案不匹配这张图换方案;代码截图选"单栏-保留缩进"
大图里小字认错默认边长 960 先压缩了图片"限制图像边长"调到 2880 以上
水印、LOGO 文字混进结果文本块落在忽略区域之外重画忽略区域,框大框全
HTTP 偶发ECONNREFUSED后端并发能力有限不要并发调用,重试请求

完整指令见 命令行手册,接口细节见 HTTP 接口手册,Python 源码在UmiOCR-data/py_src/,想抠参数可以直接翻。顺手一提:截图、批量、文档页之外,二维码标签页还能扫码和生成二维码。

【免费下载链接】Umi-OCROCR software, free and offline. 开源、免费的离线OCR软件。支持截屏/批量导入图片,PDF文档识别,排除水印/页眉页脚,扫描/生成二维码。内置多国语言库。项目地址: https://gitcode.com/GitHub_Trending/um/Umi-OCR

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/16 1:36:03

CSS transform: skew 深度解析:从数学原理到实战避坑指南

1. 从一次界面错位说起:为什么偏偏是skew前阵子帮一个做数据可视化的朋友调界面,他拿着屏幕截图问我:“为什么我这个卡片列表在鼠标悬停时,文字会跟着一起歪掉?我只想让背景斜切一下。”我一看代码,问题出在…

作者头像 李华
网站建设 2026/10/16 1:33:47

VxWorks下UDP通信编程实战:从Socket模板到踩坑优化

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华