GitHub开源:17M超轻量级中文OCR模型、支持NCNN推理

本文涉及的产品
教育场景识别,教育场景识别 200次/月
企业资质识别,企业资质识别 200次/月
车辆物流识别,车辆物流识别 200次/月
简介: GitHub开源:17M超轻量级中文OCR模型、支持NCNN推理

目录

1、项目简介


2、项目配置


3、问题解决


1、项目简介

近期GitHub上一位大神开源了一个叫做chineseocr_lite的OCR的项目,这是一个超轻量级中文OCR,支持竖排文字识别、NCNN推理,识别模型型仅17M(Psenet (8.5M) + crnn (6.3M) + anglenet (1.5M))。


image.png


以下为可实现的功能:


提供轻量的 backone 检测模型 psenet(8.5M),crnn_lstm_lite (9.5M) 和行文本方向分类网络(1.5M);

任意方向文字检测,识别时判断行文本方向;

crnn\crnn_lite lstm\dense识别(ocr-dense和ocr-lstm是搬运chineseocr 的);

支持竖排文本识别;

ncnn实现psenet(未实现核扩展);

ncnn实现crnn_dense(改变了全连接为conv1x1);

ncnn实现shuuflenev2角度分类网络;

ncnn实现ocr整个流程。

2、项目配置

该作者已经将所需的第三方库归纳到requirements.txt文件中,可以直接输入以下指令批量安装:


pip install -r requirements.txt

安装成功效果如下所示:


image.png


使用作者的图片上传验证,测试无误。


image.png


3、问题解决

最最最重要的问题来了,这个项目配置环境是真的艰难啊!Window系统下配置环境过程中可能会遇到的问题归纳如下所示:


问题1:Python模块问题:ImportError: cannot import name 'PILLOW_VERSION' from 'PIL'


解决方法:使用from PIL import Image, ImageOps, ImageEnhance, __version__ 替换文件中from PIL import Image, ImageOps, ImageEnhance,PILLOW_VERSION这句,就是用__version__ 替换原来的PILLOW_VERSION。



image.png



问题2:File "D:\Python3.7.4\lib\subprocess.py", line 1178, in _execute_child startupinfo) FileNotFoundError: [WinError 2] 系统找不到指定的文件。


解决方法:到该文件路径下将shell配置为True。



image.png



问题3:RuntimeError: Cannot compile pse: C:\Users\13450\Desktop\chineseocr_lite-master\psenet\pse


解决方法:到该文件路径下屏蔽以下两句Linux语句。



image.png



问题4:File "D:\Python3.7.4\lib\site-packages\torch\nn\modules\rnn.py", line 123, in flatten_parameters self.batch_first, bool(self.bidirectional)) RuntimeError: cuDNN error: CUDNN_STATUS_EXECUTION_FAILED


解决方法:进入PyTorch官网,选择合适自己的版本,这里我是用的是CPU编译。


image.png


问题5:UnicodeDecodeError: 'gbk' codec can't decode byte 0xab in position 551: illegal multibyte sequence


解决方法:添加编码, encoding='UTF-8'。




image.png


问题6:File "D:\Python3.7.4\lib\site-packages\cheroot\wsgi.py", line 145, in respond for chunk in filter(None, response): RuntimeError: generator raised StopIteration


解决方法:添加以下两行异常处理。


image.png


这里将自己配置好的项目分享给大家,可以关注我的微信公众号,回复关键字:中文OCR,获取项目。


拓展:GitHub开源:支持100多种语言的OCR文字识别


相关文章
|
2月前
|
编解码 人工智能 文字识别
阶跃星辰开源GOT-OCR2.0:统一端到端模型,魔搭一站式推理微调最佳实践来啦!
GOT来促进OCR-2.0的到来。该模型具有580百万参数,是一个统一、优雅和端到端的模型,由高压缩编码器和长上下文解码器组成。
阶跃星辰开源GOT-OCR2.0:统一端到端模型,魔搭一站式推理微调最佳实践来啦!
|
28天前
|
编解码 人工智能 自然语言处理
MaskGCT:登上GitHub趋势榜榜首的TTS开源大模型
近日,香港中文大学(深圳)联手趣丸科技推出了新一代大规模声音克隆TTS模型——MaskGCT。一起看看该模型的一些表现吧!
|
1月前
|
数据采集 应用服务中间件 Go
开源的键鼠共享工具「GitHub 热点速览」
开源的键鼠共享工具「GitHub 热点速览」
|
3月前
|
SQL JavaScript 前端开发
Github 2024-08-05 开源项目周报 Top15
根据 Github Trendings 的统计,本周(2024年8月5日统计)共有15个项目上榜。以下是根据开发语言汇总的项目数量: - Go 项目:4个 - JavaScript 项目:3个 - Python 项目:3个 - Java 项目:2个 - TypeScript 项目:2个 - C 项目:1个 - Shell 项目:1个 - Dockerfile 项目:1个 - 非开发语言项目:1个
118 2
|
3月前
|
人工智能 Rust JavaScript
Github 2024-08-26 开源项目周报Top15
根据Github Trendings的统计,本周共有15个项目上榜。以下是按开发语言汇总的项目数量:Python项目8个,TypeScript、C++ 和 Rust 项目各2个,Jupyter Notebook、Shell、Swift 和 Dart 项目各1个。其中,RustDesk 是一款用 Rust 编写的开源远程桌面软件,可作为 TeamViewer 的替代品;Whisper 是一个通用的语音识别模型,基于大规模音频数据集训练而成;初学者的生成式人工智能(第2版)则是由微软提供的18门课程,教授构建生成式AI应用所需的知识。
127 1
|
3月前
|
Rust Dart 前端开发
Github 2024-08-19 开源项目周报Top15
根据Github Trendings的统计,本周(2024年8月19日统计)共有15个项目上榜。按开发语言分类,上榜项目数量如下:Python项目最多,有7项;其次是JavaScript和TypeScript,各有3项;Dart有2项;HTML、PowerShell、Clojure和C++各1项。此外,还介绍了多个热门项目,包括Bootstrap 5、RustDesk、ComfyUI、易采集、Penpot等,涵盖了Web开发、远程桌面、自动化测试、设计工具等多个领域。
110 1
|
3月前
|
JavaScript 前端开发 Go
Github 2024-08-12 开源项目周报 Top14
本周Github Trendings共有14个项目上榜,按开发语言汇总如下:Python项目7个,TypeScript项目5个,C项目2个,JavaScript项目2个,Go和Batchfile项目各1个。其中亮点包括开发者职业成长指南、Windows激活工具、ComfyUI图形界面、AFFiNE知识库、易采集可视化爬虫等项目,涵盖多种实用工具和开源平台。
130 1
|
4月前
|
人工智能 文字识别 开发工具
印刷文字识别使用问题之是否支持识别并返回文字在图片中的位置信息
印刷文字识别产品,通常称为OCR(Optical Character Recognition)技术,是一种将图像中的印刷或手写文字转换为机器编码文本的过程。这项技术广泛应用于多个行业和场景中,显著提升文档处理、信息提取和数据录入的效率。以下是印刷文字识别产品的一些典型使用合集。
|
4月前
|
人工智能 JSON 文字识别
印刷文字识别使用问题之如何数电发票进行识别
印刷文字识别产品,通常称为OCR(Optical Character Recognition)技术,是一种将图像中的印刷或手写文字转换为机器编码文本的过程。这项技术广泛应用于多个行业和场景中,显著提升文档处理、信息提取和数据录入的效率。以下是印刷文字识别产品的一些典型使用合集。
|
4月前
|
文字识别 数据安全/隐私保护 iOS开发
印刷文字识别使用问题之如何识别礼品册上的卡号、密码信息
印刷文字识别产品,通常称为OCR(Optical Character Recognition)技术,是一种将图像中的印刷或手写文字转换为机器编码文本的过程。这项技术广泛应用于多个行业和场景中,显著提升文档处理、信息提取和数据录入的效率。以下是印刷文字识别产品的一些典型使用合集。