AI人工智能:开源PaddleOCR(OCR图像识别)

NO.1
PaddleOCR

github地址

https://github.com/PaddlePaddle/PaddleOCR

基于PaddlePaddle的超棒多语言OCR工具包(实用的超轻量级OCR系统,支持80多种语言识别,提供数据标注和合成工具,支持在服务器、移动、嵌入式和物联网设备之间训练和部署)

PaddleOCR旨在打造一套丰富、领先、实用的OCR工具库,帮助开发者训练出更好的模型,并应用落地。

特点

支持多种OCR相关前沿算法,在此基础上打造产业级特色模型PP-OCR、PP-Structure和PP-ChatOCR,并打通数据生产、模型、压缩、预测全部署流程

img

使用场景

参考文章

HomeLab迷你小主机(x86):Docker部署开源无纸化电子文档paperless-ngx

上次部署的电子文档并不能很好的识别发票和证件上的中英文等内容,虽然它内置了ocr,但是只对英文友好,不支持中文

本文需要继续单独部署ocr,来识别一些重要票据,如房租,发票等,方便后续电子文档关键词检索

所以ocr的要求是

  • 能自部署,且开源免费

  • 能精准的识别中文和英文

  • 能同时识别中文,英文,数字等

NO.2
OCR对比

github搜索关键词ocr

查询到结果如图,按star的从多到少排序
可以看到以下ocr项目

  1. PaddlePaddle/PaddleOCR

  2. naptha/tesseract.js

  3. JaidedAI/EasyOCR

以上几种印象中是开源免费可以自部署(具体请自行查看对应的官方文档描述)

img

放一张测试用的票据,如深圳国际车展票据

img

使用以上3种ocr提供的demo示例网站来测试

PaddlePaddle/PaddleOCR

可以看到很好的识别中文,英文和数字,并且保持每个内容的行和间距等

PS:

这个需要开通免费体验的0/0小时的模型后台才能使用

img

naptha/tesseract.js

体验地址

http://tesseract.projectnaptha.com/

体验效果

官方给的网站只能一次识别一种语言,且识别的效果并不精准

img

JaidedAI/EasyOCR

体验地址

https://www.jaided.ai/easyocr/

体验效果

虽说可以指定同时识别多种语言,但是示例识别的结果完全看不懂,不怎么精准

img

最终结果

PaddlePaddle/PaddleOCR无论是功能上还是识别结果展示上,都完胜naptha/tesseract.js和JaidedAI/EasyOCR

至少对于ocr识别深圳国际车展这个票据,只有PaddlePaddle/PaddleOCR合格

NO.3
PaddleOCR安装

官网安装文档

https://github.com/PaddlePaddle/PaddleOCR/blob/release/2.7/doc/doc_ch/quickstart.md

img

具体安装以官方的文档为准,本文不演示脚本和whl包,也不演示python

看到docker images上有一个对应的镜像

docker images地址

https://hub.docker.com/r/paddlecloud/paddleocr

但是只有4K的下载,更新也是在4个月前,并且这个镜像是通过关键词搜索而来,非官方地址跳转,是否可用,待测试,至少这个版本肯定是滞后4个月

img

参考文档

https://github.com/PaddlePaddle/PaddleCloud/blob/main/samples/PaddleOCR/PP-OCRv3.md

img

拉取镜像完全没反应

不清楚是网络问题还是镜像问题等

文档也看起来复杂,所以放弃docker部署

img

NO.4
Tips

本文对比了我所知的3个ocr效果

尝试docker部署PaddleOCR失败

再慢慢研究PaddleOCR其他部署方式,并结合电子文档等使用

其他2个ocr也可以部署,对于单英文或者单中文的场景,也有使用场景

END.

觉得本文还行,不妨顺手点赞收藏,下期见。

推荐阅读

HomeLab迷你小主机(x86):Docker部署开源跨平台ChatGPT应用Next-Web

Bing Chat的使用方法和使用体验

☕ 朋友,都看到这了,确定不关注一下么? 👇