OCR识别开源项目对比

OCR技术路线图总体上可分为五步:

图像预处理、切割字符、识别字符、恢复版面、后处理文字。

OCR识别常见的八大开源工具-51CTO.COM

https://www.toutiao.com/article/7211067985572971042/?app=news_article&timestamp=1678958335&use_new_style=1&req_id=20230316171854037BAAB72389050018F0&group_id=7211067985572971042&share_token=21D1E37E-9B9A-470C-B2D1-B156C218A94D&tt_from=weixin&utm_source=weixin&utm_medium=toutiao_ios&utm_campaign=client_share&wxshare_count=1&source=m_redirect&wid=1678958353183


实测超轻量中文OCR开源项目,总模型仅17M_鲟曦研习社

 【AI实战】超赞的几个OCR开源项目_开源ocr_szZack的博客-CSDN博客

OCR引擎选择

OCR开源项目 简介 优点 劣势
Tesseract Tesseract 是谷歌开发并开源的图像文字识别引擎,使用python开发。 1. github上面star非常多,项目非常活跃
2. 识别的语言和文字非常多
3. 后面做背书的公司非常强(google)
1. 不是专门针对中文场景
2. 相关文档主要是英文,对于阅读和理解起来有一定困难
3. 学习成本比较高
4. 源码较多,并且部分源码是c++,学习起来难度比较大
PaddleOCR PaddleOCR 是百度开源的中文识别的ocr开源软件 1. github上面star非常多,项目非常活跃
2. 模型只针对中文进行训练
3. 后面做背书的公司非常强(baidu)
4. 相关的中文文档非常齐全
5. 识别的精确度比较高
1. 目前使用的训练模型是基于百度公司自己的PaddlePaddle框架,对于小公司来说并不主流(对比于ts或者pytorch),所使用深度学习框架为后续其他深度学习无法做很好的铺垫
2. 项目整体比较复杂,学习成本较高
EasyOCR EasyOCR 是一个用 Python 编写的 OCR 库,用于识别图像中的文字并输出为文本,支持 80 多种语言。 1. github上面的star也是比较多,但是最近不是特别活跃
2. 支持的语言也是非常多的,多达80多种
3. 识别的精确度尚可
1. 从官方的页面体验来说识别的速度较慢
2. 识别的文字种类多,学习难度较高
3. 相关的官方文档是基于英文的,学习难度较高,对于新手不太友好
chineseocr ... 1. github上面的star也是比较多
2. 专门针对中文进行学习和训练的模型
3. 相关的文档比较多,上手相对比较容易
1. 因为没有大厂和公司的背书, 所以存在一些bug
2. 对于复杂场景下的效果不佳
3. 模型都是现成的,如果要新训练模型难度比较高
chineseocr_lite ... 1. github上面的star也是比较多
2. 专门针对中文进行学习和训练的模型
3. 相关的文档比较多,上手相对比较容易
4. 比较轻量级,部署也比较方便
...
TrWebOCR ... 1. 部署简单
2. 使用简单
3. 有对应的web页面,测试方便
4. 有对应的web接口,方便调用
1. 核心模型不开源,无法进行再次学习
2. 无法进行后续训练
3. 必须要联网才能使用
4. 精度识别一般
5. 项目不是很活跃
cnocr ... 1. 使用简单
2. 文档齐全
3. 代码全部开源,可以进行修改
4. 预定义的模型较多
5. 便于学习和模型重新训练
1. 精确度不高
2. 没有对应的web界面和接口
3. 需要配合cnstd进行使用

OCR(Optical Character Recognition,光学字符识别)是一种将图像或手写文字转换为可编辑或可搜索文本的技术。在现代社会中,OCR技术已经被广泛应用于文档管理、自动化数据录入等领域。为了满足不同用户的需求,越来越多的开源OCR软件项目在不断涌现。下面我们来看看目前比较流行的几个OCR开源项目。

1. Tesseract
Tesseract是一个由谷歌公司开源的OCR引擎,最初由HP实验室开发。该引擎采用了深度学习技术,支持多种语言识别,重点支持英语,但也可以轻松地进行其他语言训练。Tesseract可用于Windows、Linux、Mac操作系统,还提供API供开发者使用。

2. OCRopus
OCRopus是一款由德国科学家开发的OCR软件,也是一个比较流行的开源OCR项目。OCRopus基于Python实现,采用“自上而下”的结构架构,在文本线定位、文本行识别、字符识别等方面表现优异。目前,OCRopus支持多种语言的OCR识别,可在Windows、Mac、Linux等系统上使用。

3. GOCR
GOCR也是一款流行的OCR开源项目,采用的是C语言编写,支持类Unix和Windows操作系统。GOCR在字符识别和文本行识别方面表现不太理想,但在处理数字和标点符号方面有其独特的优势,特别适用于处理金融票据。

4. Kraken
Kraken是一款基于深度学习的OCR引擎,目前最新的版本为1.1.0,适用于多种语言、多种格式的文本识别,支持Docker容器化部署。Kraken在布局分析、文本行识别、字符识别方面表现远超其他OCR开源项目,是最近几年发展最快的OCR引擎之一。

5. CuneiForm
CuneiForm是由俄罗斯开发的OCR软件,可支持多种语言和多种文本格式的识别,包括PDF、DJVU、HTML等。CuneiForm采用的是局部二值化和联合校验的方法,能够在处理含有零散文本和缺失部分文本的图像时有较好的效果。

6.hn——ocr

GitHub - cnhnkj/hn_ocr: 基于cnstd+cnocr作为基础,封装的一个ocr的web服务

Tessract

OCR 软件有哪些开源项目? - 腾众教程网

JavaOCR: Java实现OCR图片识别文字功能

猜你喜欢

转载自blog.csdn.net/okyanxingkui/article/details/131401368
今日推荐