工程地址:https://github.com/xiaofengShi/CHINESE-OCR
主要参考博客进行移植:https://blog.csdn.net/koloumi/article/details/84791729
配置环境为Win10+CPU+Anaconda3
其中有遇到一些问题,补充说明。
1.修改ctpnlibutilscython_nms.pyx文件
2.修改set_up_cpu.py文件,根据上面的参考博客修改。
【然后将命令行的目录进入到这个目录,运行setup_cpu.py 运行之后会出现一些问题:
ValueError: got unknown compilation option, please remove: include_dirs 如果是遇到这个问题,那就把这个setup_cpu.py中的cython编译的哪行代码中的include的参数去掉,不同版本的 python参数有些不一样。去掉就行,然后编译。】
去掉后出现:
编译时遇到找不到.h文件,直接把anaconda下的Libsite-packages umpycoreinclude文件夹numpy复制到setup_cpu.py目录下,运行出现:
打开ufuncobject.h修改头文件为#include "npy_math.h",就可以编译生成了,在目录下多出build文件夹,拷贝buildlib.xxxctpnlibutils下的两个文件到setup_cpu.py目录下,移除numpy文件夹,否则可能出现module 'utils.numpy' has no attribute 'float'问题。
3.【错误:ModuleNotFoundError: No module named 'lib.fast_rcnn’】
主要原因是导入包路径问题。主要修改两个地方,ctpn/ctpn/model.py和ctpn/lib/fast_rcnn/nms_wrapper.py。
model.py:
nms_wrapper.py:
4.【NoneType’ object has no attribute ‘model_checkpoint_path’的问题】
去github工程下载相应的模型,在CHINESE-OCR/angle/下放入modelAngle.h5,CHINESE-OCR/ctpn/ctpn/retrain/ckpt放checkpoint和VGGnet模型。
工程中需要修改路径的地方,下图为作者原地址,改为你自己下载模型存放地址:
ctpn/ctpn/model.py
angle/predict.py
ocr/model.py
配置了半天,终于好了!