OCR调研

OCR调研

一、介绍

OCR(Optical Character Recognition,光学字符识别)是一种将图像中的文字转换为计算机可处理格式的技术。OCR技术经历了从传统OCR到基于深度学习的OCR的转变。深度学习OCR技术通过模拟人脑神经元结构处理文本和图像数据,相较于传统OCR,在复杂场景下的识别性能和速度有显著提升。它在金融、保险、医疗、交通、教育等多个行业中有广泛应用,并随着人工智能技术的发展,OCR技术的性能不断提升,应用场景也日益复杂化。

二、开源项目

1 PaddleOCR

项目地址:https://github.com/PaddlePaddle/PaddleOCR

PaddleOCR文档:https://paddlepaddle.github.io/PaddleOCR/

百度开源项目,文档完善。PaddleOCR 旨在打造一套丰富、领先、且实用的 OCR 工具库,助力使用者训练出更好的模型,并应用落地。

优点:准确率高,支持多语言,支持多种 OCR 相关前沿算法,支持自训练,支持倾斜、竖排等多种方向文字识别

缺点:偏向中文识别,语言支持有限

部署:本地部署、云端部署、docker

2 Tesseract

项目地址:https://github.com/tesseract-ocr/tesseract

优点:由Google维护,支持超过100种语言的识别,并且能够处理多种图像格式,如PNG、JPEG和TIFF等。提供了丰富的API接口和文档,支持多种操作系统。

缺点:速度慢

部署:安装Tesseract OCR(Windows/Linux)、配置环境变量

3 EasyOCR

项目地址:https://github.com/JaidedAI/EasyOCR

优点:全语种的(包括70+门外语识别),不单单针对中文

缺点:速度慢,官方推荐支持CUDA的独立显卡可以提高运行效率。

部署:pip安装,只能linux/windows下运行。

4 chineseocr

基于yolo3crnn 实现中文自然场景文字检测及识别

项目地址:https://github.com/chineseocr/chineseocr

优点:支持补充训练,有多版本优化模型

缺点:使用的三方库较老,部分三方库已废弃,环境配置困难,效果一般,且很少维护

5 chineseocr_lite

超轻量级中文ocr,支持竖排文字识别, 支持ncnn、mnn、tnn推理 ( dbnet(1.8M) + crnn(2.5M) + anglenet(378KB)) 总模型仅4.7M

项目地址:https://github.com/DayBreak-u/chineseocr_lite

优点:轻量模型,执行速度快,准确率高

缺点:不支持pip安装,不支持补充训练,不支持自定义训练;不支持复杂、不常见字符,比如德语、法语;竖向文本识别错误。

部署:源码下载运行

6 CnOCR

CnOCR 是 Python 3 下的文字识别(Optical Character Recognition,简称OCR)工具包,支持简体中文、繁体中文(部分模型)、英文和数字的常见字符识别,支持竖排文字的识别。自带了20+个训练好的识别模型,适用于不同应用场景,安装后即可直接使用。同时,CnOCR也提供简单的训练命令供使用者训练自己的模型。

项目地址:https://github.com/breezedeus/cnocr

文档:https://cnocr.readthedocs.io/zh-cn/stable/

优点:轻量模型,执行速度快,效果好,支持训练自己的模型

缺点:部分符号识别效果差,部分场景下会出现空格丢失情况

部署:pip

7 RapidOCR

目前已知运行速度最快、支持最广,完全开源免费并支持离线快速部署的多平台多语言OCR。主打ONNXRuntime推理引擎推理,比Paddle推理引擎速度有4~5倍提升,且没有内存泄露问题。

项目地址:https://github.com/RapidAI/RapidOCR

部署:pip

8 Umi-OCR

开源、免费的离线OCR软件。支持截屏/批量导入图片,PDF文档识别,排除水印/页眉页脚,扫描/生成二维码。内置多国语言库。

项目地址:https://github.com/hiroi-sora/Umi-OCR

9 SwiftOCR

项目地址:https://github.com/NMAC427/SwiftOCR

已被弃用,不再维护。

相关推荐
christine-rr1 小时前
【25软考网工笔记】第二章 数据通信基础(4)数据编码
网络·笔记·信息与通信·软考·考试
zzh-1 小时前
【无标题】spark SQL核心编程
笔记
睡了吃-1 小时前
Spark-SQL核心编程
笔记
可乐^奶茶2 小时前
2026《数据结构》考研复习笔记一(C++基础知识)
数据结构·笔记·考研
学也不会2 小时前
ocr-身份证正反面识别
ocr
归辞...5 小时前
【iOS】OC高级编程 iOS多线程与内存管理阅读笔记——自动引用计数(二)
笔记·ios·cocoa
DXM05216 小时前
牟乃夏《ArcGIS Engine地理信息系统开发教程》学习笔记2
开发语言·javascript·笔记·学习·arcgis·ae
寻丶幽风6 小时前
论文阅读笔记——Multi-Token Attention
论文阅读·笔记·深度学习·语言模型·transformer
卡戎-caryon6 小时前
【Linux网络与网络编程】11.数据链路层mac帧协议&&ARP协议
linux·服务器·网络·笔记·tcp/ip·数据链路层
梦の6 小时前
C++Cherno 学习笔记day21 [86]-[90] 持续集成、静态分析、参数计算顺序、移动语义、stdmove与移动赋值操作符
c++·笔记·学习