Umi-OCR 实战指南:5 个场景完成截图、批量图片与 PDF 的文字识别
Umi-OCR 实战指南5 个场景完成截图、批量图片与 PDF 的文字识别【免费下载链接】Umi-OCROCR software, free and offline. 开源、免费的离线OCR软件。支持截屏/批量导入图片PDF文档识别排除水印/页眉页脚扫描/生成二维码。内置多国语言库。项目地址: https://gitcode.com/GitHub_Trending/um/Umi-OCRUmi-OCR 是一款免费开源、完全离线的 OCR 软件解压即用支持截图识别、批量图片导入、PDF 文档识别和二维码扫描/生成内置多语言识别模型。适合需要把图里的字变成能复制、能搜索的文本的普通用户不必联网隐私不出本机。快速上手3 分钟识别第一张截图下载发行包.7z压缩包或.7z.exe自解压包后解压无需安装直接运行Umi-OCR.exeLinux 为umi-ocr.sh即可启动。Windows 用户也可以走 Scoop 一键安装scoop bucket add extras scoop install extras/umi-ocr # 自带 RapidOCR 引擎兼容性好 scoop install extras/umi-ocr-paddle # 自带 PaddleOCR 引擎速度稍快首次启动时软件会按系统语言自动切换界面繁中、英语、日语、俄语等均可。最短体验路径打开截图OCR标签页按已绑定的截图快捷键或点击页面上的截图图标用鼠标框选屏幕上的任意文字区域Esc可取消本次截图识别完成后右侧记录面板里直接划选文本复制或点复制整段带走。左侧图片预览栏支持鼠标划选复制右侧识别记录支持编辑文字、划选多条记录一起复制。另外你在任何软件里复制过的图片都可以直接粘贴到 Umi-OCR 里识别。截图提取文字排版解析方案决定识别结果成色普通文本截图用默认方案就够但一旦截图里有代码、表格或竖排文字结果是否能用主要取决于右侧设置里的文本后处理 → 排版解析方案。各方案含义如下这些值在 HTTP/命令行接口中同样有效方案取值适用场景多栏-按自然段换行默认multi_para大多数文档截图自动识别多栏布局多栏-总是换行multi_line每段语句强制换行适合结构化内容多栏-无换行multi_none把所有语句合并成一行单栏-保留缩进single_code代码截图保留行首缩进和行中空格不做处理none引擎原始输出每段语句换行以从技术文档截图里抠出一段 Python 代码为例截图时把排版解析切到single_code得到的缩进结构和源码一致可以直接粘进编辑器运行。文档类截图则保持multi_para即可横排和竖排从右到左排版都能自动处理竖排还需 OCR 引擎本身支持。⚠️ 容易踩的坑识别出来顺序是乱的九成是方案选错——多栏报纸式版面用single_*系列会串栏代码截图用默认multi_para则会丢掉缩进。批量识别图片文件夹用忽略区域排掉水印干扰手里有几十上百张jpg/png/webp/bmp/tif图片扫描件、聊天记录导出图时切到批量OCR标签页点选择图片直接选中文件夹即可——没有数量上限支持任务完成后自动关机/待机适合下班前丢一堆图跑通宵。两个关键设置识别语言/模型库、排版解析方案与截图页一致批量任务同样生效忽略区域在右栏设置中进入忽略区域编辑器按住右键在预览图上拖动绘制矩形框框内文字在任务中被整体丢弃。忽略区域有一个反直觉的规则被忽略的是整个文本块而不是单个字符——只有当文本块完整落在矩形框内部时才会被剔除压在框边缘的块会保留。所以画框时宁可放大一点把水印可能出现的所有位置都罩住。批量识别带固定页眉 LOGO 的图片时这一步能把某某公司 2024这类噪声从结果里彻底清掉。输出格式可选txt / jsonl / md / csv(Excel)其中 csv 可直接被 Excel 打开方便逐行核对。PDF 扫描文档识别产出可搜索的双层 PDF文档识别标签页处理的是pdf, xps, epub, mobi, fb2, cbz六类文件v2.1.4 及以上版本才有此功能。它的价值在于扫描版 PDF 本身没有文本层识别后能输出双层可搜索 PDF——底层是原始页面图像上层是透明文本CtrlF 直接搜得到。操作流程拖入文档 → 设置识别语言默认简体中文→ 配置忽略区域排除每页固定位置的页眉页脚 → 选择保存类型双层可搜索 PDF、单层纯文本 PDF、txt、jsonl、csv 等→ 启动任务。长文档还支持只识别指定页码范围任务完成后可自动关机/休眠。对一页里既有扫描图又有原生文本的混合文档doc.extractionMode参数决定处理方式mixed混合处理默认、fullPage整页强制 OCR、imageOnly仅 OCR 图片、textOnly仅拷贝原文本。加密文档需要填写password参数。二维码与全局设置两个顺手的小能力二维码标签页支持截图、粘贴或拖入本地图片读取其中的二维码/条形码一图多码也没问题共支持 19 种协议QRCode、EAN13、PDF417 等反向操作也支持——输入文本即可生成二维码图片可调纠错等级等参数。命令行下对应umi-ocr --qrcode_read D:/xxx.png和umi-ocr --qrcode_create 文本 D:/输出.jpeg 128 256后两个数字指定宽高。全局设置页管的是软件本身一键添加桌面快捷方式、开机自启切换界面语言、亮/暗主题、字体和文字大小以及切换 OCR 引擎插件。其中有一个排障专用项渲染器。软件界面默认走显卡加速渲染如果你的机器上出现截屏闪烁、UI 错位就在这里切换渲染方案或关闭硬件加速通常立即解决。把 OCR 接进自动化命令行与 HTTP 接口当截图 → 复制的手动循环不够用时Umi-OCR 提供了两条外部通道入口都是主程序本身命令行入口即Umi-OCR.exeLinux 下可简写为umi-ocr注意用RUN_GUI.bat等备用启动器启动时可能无法使用命令行。前提只有一个在全局设置中允许 HTTP 服务默认开启主机保持仅本地即可。命令行指令通过本地环回传给后台进程不经过物理网卡。常用指令umi-ocr --screenshot --clip # 截屏并复制结果到剪贴板 umi-ocr --path D:/img1.png D:/文件夹 # 识别单个文件或整个文件夹 umi-ocr --path D:/scan -- result.txt # 结果写入文件覆盖 umi-ocr --path D:/scan -- result.txt # 结果追加到文件指令支持前缀简写--screenshot可写--sc。范围截屏可指定屏幕和矩形umi-ocr --screenshot screen0 rect50,100,300,200配合格式化快捷键工具可实现按一下 F10 自动截固定区域识别。HTTP 侧则是标准 JSON 接口默认端口1224GET /api/ocr/get_options查询当前引擎支持的全部参数及默认值POST /api/ocr传 base64 图片 参数字典返回code100 成功101 图中无文本和识别结果文档识别走五步流程上传 → 轮询状态 → 拿下载链接 → 下载 → 清理详见 HTTP 文档识别手册。Python 里两三行就能调通import base64, requests b64 base64.b64encode(open(D:/scan.png, rb).read()).decode() res requests.post(http://127.0.0.1:1224/api/ocr, json{ base64: b64, options: {tbpu.parser: single_code, data.format: text}, }).json() print(res[data]) # data.formattext 时直接是可读文本⚠️ 两条接口共同的注意事项后端对并发支持较差不要并行调用长时间连续调用有小概率出现ECONNREFUSED重新发一次即可。另外 Umi-OCR 暂不支持系统管道重定向、|可能失效要落盘就用--output要跨进程拿返回值就用POST /argv接口只允许 127.0.0.1 调用。完整清单见 命令行手册 与 HTTP 接口手册。实战配方带水印的扫描图片一键变成 Excel 报表把前面几个能力串成一个真实任务文件夹D:/invoices里有 200 张发票扫描图每张右上角都盖着固定的XX 公司水印需要批量转成可核对的 Excel。打开批量OCR标签页 → 选择图片 → 选中D:/invoices文件夹左侧列表出现全部 200 张图右栏设置 → 文本后处理 → 进入忽略区域编辑器按住右键在上图位置的水印处画一个略大于水印的矩形框注意整块忽略规则框要大一点输出格式选csv(Excel)指定输出目录顺手勾选任务完成后待机可选点开始任务顶部进度条走完左侧列表逐行显示每张图的耗时与置信度如 0.42s / 0.97打开 csv 即可在 Excel 里逐行筛选、汇总。全程无需联网200 张普通扫描图在一台普通笔记本上大约几分钟量级。如果这类任务每天重复把第 1 步替换为命令行即可免开界面umi-ocr --path D:/invoices -- D:/results/invoices.csv参数速查最常改的 8 个设置场景参数取值作用切换识别语言ocr.languagemodels/config_chinese.txt、config_en.txt、config_japan.txt、config_korean.txt、config_cyrillic.txt等加载对应语言模型库PaddleOCR 引擎专用识别代码截图tbpu.parsersingle_code保留行首缩进与行中空格识别多栏文档tbpu.parsermulti_para默认按自然段自动换行、自动识别多栏大图/长图精度不足ocr.limit_side_len960默认/2880/4320/999999边长超限的图片会被压缩调高保精度、调低提速PaddleOCR 专用识别倾斜/倒置文字ocr.clstrue/false启用方向分类可能降低识别速度PaddleOCR 专用排除水印/页眉页脚tbpu.ignoreArea[[0,0],[100,50]]数组完全落在框内的文本块被丢弃只取纯文本data.formattext/dictdict含坐标与置信度text仅返回拼接好的文本改 HTTP 端口/自启/语言全局设置页默认端口1224界面设置会保存到./UmiOCR-data/.settingsini 格式改完可用umi-ocr --reload重新加载故障排查4 个高频问题的现象与解法1. 跑命令行 / 调 HTTP 接口毫无反应可能原因HTTP 服务被关了或你用的是RUN_GUI.bat备用启动器。 解决全局设置里确认允许 HTTP 服务已开启默认开并直接用Umi-OCR.exe/umi-ocr作为入口调用。2. 识别出来顺序混乱、代码丢缩进可能原因排版解析方案与截图内容不匹配。 解决文档截图用multi_para代码截图切single_code多栏排版被串栏时换multi_line强制换行。3. 大图、长图识别精度明显下降可能原因默认ocr.limit_side_len960会把大边长图片压缩后再识别。 解决批量页设置 → 文字识别 → 限制图像边长调高到2880或4320代价是速度变慢。4. 截屏时界面闪烁、UI 错位可能原因显卡加速渲染与你的显卡驱动不兼容。 解决全局设置 → 界面和外观 → 渲染器换一种渲染方案或关闭硬件加速。另外两个小提示HTTP 调用返回code101表示图中没有文本不是报错命令行输出想重定向到别的程序请改用--output或走POST /argv接口系统管道符在这里不保证生效。适合谁用下一步看哪里Umi-OCR 最适合三类人日常需要频繁截图转文字的办公/开发用户截图 OCR single_code就够要处理成堆扫描件的档案、财务、研究人员批量 OCR 忽略区域 csv 输出以及想把 OCR 嵌进脚本和 CI 的自动化用户命令行 HTTP 接口全程本地环回隐私不出机器。下一步按需求查对应文档即可命令行手册 覆盖全部指令与范围截屏HTTP 接口手册 是接口的总入口图片识别细节在 api_ocr.mdPDF 五步流程在 api_doc.md版本更新与新增功能记录在 CHANGE_LOG.md。所有设置最终都落在./UmiOCR-data/.settings里改配置、写自动化脚本前先打开这个文件对照一遍心里就有底了。【免费下载链接】Umi-OCROCR software, free and offline. 开源、免费的离线OCR软件。支持截屏/批量导入图片PDF文档识别排除水印/页眉页脚扫描/生成二维码。内置多国语言库。项目地址: https://gitcode.com/GitHub_Trending/um/Umi-OCR创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考