随着科技的发展,OCR场景随处可见,很多APP也集成如身份证识别,银行卡识别的功能,包括微信都支持截图文件中的文字提取。现在,各大厂商均有提供各种场景的OCR识别的API。但是,有时候我们也想自己来折腾一下。这时候,就可以借助一些主流开源框架来快速达到我们的目的。
OCR引擎tesseract
Tesseract,一款由HP实验室开发由Google维护的开源OCR引擎,开源,免费,支持多语言,多平台;
ba61cf19337b479493b5a4dafe55b7d7~noop.image?_iz=58558&from=article.jpg


https://github.com/tesseract-ocr/tesseract.git
tesseract.js
js版本的Tesseract OCR,支持一百多种语言,使用也是非常简单,可以用npm安装,也可以直接在页面引用js
12db48d0cb4042fbbf584b46bceb5901~noop.image?_iz=58558&from=article.jpg

4f50cce3c59b4b1fb51fcc5c7d1aac8b~noop.image?_iz=58558&from=article.jpg

https://github.com/naptha/tesseract.js.git
PaddleOCR
PaddleOCR是百度开源一套OCR,旨在打造一套丰富、领先、且实用的OCR工具库,助力开发者训练出更好的模型,并应用落地。
e178c469b5d341d398ee00f93767373e~noop.image?_iz=58558&from=article.jpg

44511685de884303be8a209009c88e39~noop.image?_iz=58558&from=article.jpg

e75c1dd041e5400d91e4ba890dfb3726~noop.image?_iz=58558&from=article.jpg

https://github.com/PaddlePaddle/PaddleOCR.git
EasyOCR
EasyOCR是用Python编写基于Tesseract的OCR识别库,用于图像识别输出文本,目前支持80多种语言。
5cba8612f89d4e94980a2981083d4d4b~noop.image?_iz=58558&from=article.jpg


https://github.com/JaidedAI/EasyOCR.git
mmocr
MMOCR 是基于 PyTorch 和 mmdetection 的开源工具箱,专注于文本检测,文本识别以及相应的下游任务,如关键信息提取。
c7bcf58e25d94b329efc7097c2bf5f40~noop.image?_iz=58558&from=article.jpg


https://github.com/open-mmlab/mmocr.git
simple-ocr-opencv
基于opencv numpy开源的OCR识别引擎
7013f53828e84134bbf7765b5049a4d9~noop.image?_iz=58558&from=article.jpg


https://github.com/goncalopp/simple-ocr-opencv.git
OCR工具OCRmyPDF
OCRmyPDF是基于tesseract-ocr开发、训练的文字识别提取的开源项目
841089987f074793be23ba53e5adec00~noop.image?_iz=58558&from=article.jpg


https://github.com/ocrmypdf/OCRmyPDF.git
Umi-OCR
基于 PaddleOCR 实现的一款开源的文字识别工具,
6d7f6ef687c44a2181c1d2749baf0def~noop.image?_iz=58558&from=article.jpg

一般开源项目,识别率肯定没有商用的那么高,只有通过训练自己的字库来提高识别率。文字识别场景,有时候就会涉及到图片处理,这里又会关联到其它强大的图像处理开源项目,如:OpenCV。这些项目中,PaddleOCR相对来说会更符合我们常见的业务场景,也支持我们自己去训练。

来源:自学编程之道