目录
1.介绍
Umi-OCR:免费,开源,可批量的离线OCR软件,目前适用于 Windows7 x64 及以上。
这个项目基于基于 PaddleOCR,支持截图识别、批量导入识别、个性化识别等功能。
整个项目由 python 语言编写,win7系统的小伙伴大概率是用不了的。推荐 Win10 x64 及以上版本。
2.项目亮点
免费
本项目所有代码开源,完全免费。
方便
解压即用,离线运行,无需网络。
高效
自带高效率的离线OCR引擎,内置多种语言识别库。
灵活
支持命令行、HTTP接口等外部调用方式。
功能
截图OCR / 批量OCR / PDF识别 / 二维码 / 公式识别(测试中)
3.项目功能(已实现)
-
标签页框架。
-
OCR API控制器。
-
OCR 任务控制器。
-
主题管理器,支持切换浅色/深色主题主题。
-
实现 批量OCR。
-
实现 截图OCR。
-
快捷键机制。
-
系统托盘菜单。
-
文本块后处理(排版优化)。
-
引擎内存清理。
-
软件界面多国语言。
-
命令行模式。
-
Win7兼容。
-
Excel(csv)输出格式。
-
Esc
中断截图操作 -
外置主题文件
-
字体切换
-
加载动画
-
忽略区域。
-
二维码识别。
-
批量识别页面的图片预览窗口。
-
PDF识别。
-
调用本地图片浏览器打开图片。 #335
-
重复上一次截图。 #357
-
修Bug:文档识别在Windows7系统的兼容性问题。
-
HTTP/命令行接口添加二维码识别/生成功能。(#423)
-
二维码接口的文档。
4.功能体验
界面语言
直接在releases中选择合适的版本,下载解压即可。
可以看到,项目还配套了英、日、韩等多个国家的语言识别库,方便国外的这些用户使用。
截图识别OCR
截图OCR:打开这一页后,就可以用快捷键唤起截图,识别图中的文字。
- 左侧的图片预览栏,可直接用鼠标划选复制。
- 右侧的识别记录栏,可以编辑文字,允许划选多个记录复制。
- 也支持在别处复制图片,粘贴到Umi-OCR进行识别。
文本后处理
关于 OCR文本后处理 - 排版解析方案: 可以整理OCR结果的排版和顺序,使文本更适合阅读和使用。预设方案:
多栏-按自然段换行
:适合大部分情景,自动识别多栏布局,按自然段规则进行换行。多栏-总是换行
:每段语句都进行换行。多栏-无换行
:强制将所有语句合并到同一行。单栏-按自然段换行
/总是换行
/无换行
:与上述类似,不过 不区分多栏布局。单栏-保留缩进
:适用于解析代码截图,保留行首缩进和行中空格。不做处理
:OCR引擎的原始输出,默认每段语句都进行换行。
上述方案,均能自动处理横排和竖排(从右到左)的排版。(竖排文字还需要OCR引擎本身支持)
批量OCR
批量OCR:这一页用于批量导入本地图片进行识别。
- 支持格式:
jpg, jpe, jpeg, jfif, png, webp, bmp, tif, tiff
。 - 保存识别结果的支持格式:
txt, jsonl, md, csv(Excel)
。 - 与截图OCR一样,支持
文本后处理
功能,整理OCR文本的排版和顺序。 - 没有数量上限,可一次性导入几百张图片进行任务。
- 支持任务完成后自动关机/待机。
- 如果要识别像素超大的长图或大图,请调整:页面的设置→文字识别→限制图像边长→【调高数值】。
- 拥有特殊功能
忽略区域
。
文档识别
文档识别:
- 支持格式:
pdf, xps, epub, mobi, fb2, cbz
。 - 对扫描件进行OCR,或提取原有文本。可输出为 双层可搜索PDF 。
- 支持设定 忽略区域 ,可用于排除页眉页脚的文字。
- 可设置任务完成后 自动关机/休眠 。
二维码
扫码:
- 截图/粘贴/拖入本地图片,读取其中的二维码、条形码。
- 支持一图多码。
- 支持19种协议,如下:
Aztec
,Codabar
,Code128
,Code39
,Code93
,DataBar
,DataBarExpanded
,DataMatrix
,EAN13
,EAN8
,ITF
,LinearCodes
,MatrixCodes
,MaxiCode
,MicroQRCode
,PDF417
,QRCode
,UPCA
,UPCE
生成码:
- 输入文本,生成二维码图片。
- 支持19种协议和纠错等级等参数。
全局设置
全局设置:在这里可以调整软件的全局参数。常用功能如下:
- 一键添加快捷方式或设置开机自启。
- 更改界面语言。Umi支持繁中、英语、日语等语言。
- 切换界面主题。Umi拥有多个亮/暗主题。
- 调整界面文字的大小 和字体。
- 切换OCR插件。
- 渲染器 :软件界面默认支持显卡加速渲染。如果在你的机器上出现截屏闪烁、UI错位的情况,请调整
界面和外观
→渲染器
,尝试切换到不同渲染方案,或关闭硬件加速。
5.项目集成(调用接口)
基础说明
如上图,必须允许HTTP服务才能使用HTTP接口(默认开启)。如果需要允许被局域网访问,请将主机切换到任何可用地址
。
在全局设置页中勾选高级
才会显示。
1) 图片OCR:Base64 识别接口
传入一个base64编码的图片,返回OCR识别结果。
URL:/api/ocr
例:http://127.0.0.1:1224/api/ocr
(实际端口请在全局设置中查看)
2) 图片OCR:参数查询接口
返回当前需要提供哪些options参数。
URL:/api/ocr/get_options
例:http://127.0.0.1:1224/api/ocr/get_options
3) 二维码:Base64 识别接口
传入一个base64编码的图片,返回二维码识别结果。
URL:/api/qrcode
例:http://127.0.0.1:1224/api/qrcode
4) 二维码:从文本生成图片
传入文本,根据文本生成二维码图片,返回图片base64。
URL:/api/qrcode
(与二维码识别接口一致,只是参数不同)
例:http://127.0.0.1:1224/api/qrcode