1. 缘起
最近在学习研究AI相关的技术,发现百度 Paddle 框架简单易用,PaddleOCR 在文字识别方面表现出色,但是对于非程序员来说,使用 PaddleOCR 还是有一定门槛,所以就尝试用把 PaddleOCR 做成一个更简单易用的桌面客户端。目前已支持批量添加图片、拖动图片到软件界面、粘贴剪贴板的图片进行识别。
开发这个项目的另一个目的是想尝试一种将 python 项目打包成桌面客户端的方式,也考虑过直接使用 python 的 GUI 方案,但是还是想尝试一下基于 web 做 ui 的方案,所以就使用了 electron 开发界面。界面与 python 交互使用了 thrift 方案,相比 http 更适合本地通信。
2. 项目简介
- AI-OCR 是基于 PaddleOCR 的OCR桌面客户端程序,支持Windows、Linux、MacOS等操作系统。
- 技术架构
- 前端界面:Electron + Reactjs + ArcoDesign
- OCR引擎:PaddleOCR + Pyinstaller 打包成独立服务
- 前端和OCR引擎通信:thrift (跨语言RPC通信框架)
3. 软件界面
4. 编译和打包说明(mac和windows)
5. 软件下载(mac和windows)
链接:https://pan.baidu.com/s/1TPOs2qVnY9fpkfEGZnA10Q?pwd=nfxu 提取码:nfxu
6. 项目源码
gitee: https://gitee.com/bingal/ai-ocr
github: https://github.com/bingal/ai-ocr
7. 未来可能的优化方向
- 打包的时候排除不必要的库,减小打包体积
- OCR推理引擎改用C++实现,提高推理速度和大幅减小打包体积
- 优化前端界面,增加更多功能,比如:增加多种语言模型,增加表格识别导出excel等