Chineseocr:YOLO3+CRNN (基于windows+pytorch安装试用)

1.4.1 介绍

Git地址:https://github.com/chineseocr/chineseocr。目前支持darknet、keras、tensorflow、pytorch。但将来会主要支持darknet。Yolo3开始就是用darknet编写的。
基于yolo3 与crnn 实现中文自然场景文字检测及识别。我试的身份证识别效果很好。
YOLO3:目标检测。
CRNN: EndToEnd文本识别网络-CRNN(CNN+GRU/LSTM+CTC)

1.4.2 环境准备

目前git上的代码必须用tensorflow=1.8,我本地的tensorflow=1.15运行不起来,会报错:InvalidArgumentError: You must feed a value for placeholder tensor ‘Placeholder_367’ with dtype float and shape [2]。
准备命令如下:
CPU部署 参考:setup-cpu.md
##CPU 环境配置,
conda create -n chineseocr python=3.6 pip scipy numpy jupyter ipython ##运用conda 创建python环境
conda activate chineseocr
pip install easydict opencv-contrib-python4.0.0.21 Cython h5py lmdb mahotas pandas requests bs4 matplotlib lxml -i https://pypi.tuna.tsinghua.edu.cn/simple/
pip install -U pillow -i https://pypi.tuna.tsinghua.edu.cn/simple/
pip install web.py
0.40.dev0 redis
pip install keras2.1.5 tensorflow1.8 -i https://pypi.tuna.tsinghua.edu.cn/simple/
conda install pytorch torchvision -c pytorch

1.4.3 安装pytorch说明

上面最后一行命令安装pytorch,国内安装pytorch下载很慢,清华镜像好像也封了,没有。
所以选择下载文件后安装,下载地址https://download.pytorch.org/whl/cpu/torch_stable.html。因为环境是python=3.6,所以选择cp36包。
下载后执行下面两步
输入如下代码(将红色部分替换为下载的安装包的存放路径):
pip install C:\Users\XXX\torch-1.4.0+cpu-cp36-cp36m-win_amd64.whl
再输入代码(将红色部分替换为下载的安装包的存放路径):
pip install C:\Users\XXX\torchvision-0.5.0+cpu-cp36-cp36m-win_amd64.whl

1.4.4 准备工作

1.下载git代码,https://github.com/chineseocr/chineseocr。
2.下载训练好的模型,主要是pytorch 的。Git上有百度网盘地址。
3.我尝试使用keras orc但报错,就选择了pytorch ocr。这样也不用将上一步下载的模型转换成keras的了。转换方法:python tools/pytorch_to_keras.py -weights_path models/ocr-lstm.pth -output_path models/ocr-lstm-keras.h5。
4.注意config.py 配置,下载下来的基本不用动。

1.4.5 Windows GBK编码问题

运行python app.py 8080. 会报错:‘gbk’ codec can’t decode byte 0xab in position 428: illegal multibyte sequence。
我用的解决办法是:
可以根据错误提示在D:\ProgramData\Anaconda3\Lib\site-packages\web下将template.py和debugerror.py中所有涉及文件读取open函数的代码加上了encoding=‘utf-8’ 。如下所示:
Chineseocr:YOLO3+CRNN (基于windows+pytorch安装试用)_第1张图片

1.4.6 运行demo

不必要弄docker,直接在代码根目录运行python app.py 8080.
在这里插入图片描述

运行成功后,如下所示:
在这里插入图片描述
在浏览器里访问http://localhost:8080/ocr,就可以试用了。下面是身份证反面,我试的正面也很好。
Chineseocr:YOLO3+CRNN (基于windows+pytorch安装试用)_第2张图片

你可能感兴趣的:(文本识别,人工智能,笔记)