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

目录

1、项目简介


2、项目配置


3、问题解决


1、项目简介

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


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


以下为可实现的功能:


提供轻量的 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

安装成功效果如下所示:


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


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


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


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。



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



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


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



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



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


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



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



问题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编译。


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


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


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




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


问题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


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


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


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


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


上一篇:Photoshop 立体效果的漂亮的彩色水晶字


下一篇:Windows 2008下 rman backup scirpts(备份脚本)--已经在生产环境下通过验证