**环境:python 3.7.1 **
1. 安装paddlehub
安装paddlehub之前,需要先安装paddlepaddle,对此我深有体会。
百度飞浆快速安装说明:https://www.paddlepaddle.org.cn/install/quick#show_info
pip3 install paddlepaddle --upgrade -i https://pypi.tuna.tsinghua.edu.cn/simple
安装完成后,会有下面类似的提示,
Installing collected packages: paddlepaddle
Successfully installed paddlepaddle-1.8.3
检查下是否安装成功。目前我安装的版本时1.8.3。
使用 python 进入python解释器,输入
import paddle.fluid
再输入
paddle.fluid.install_check.run_check()
如果出现 Your Paddle Fluid is installed successfully!,说明您已成功安装。
安装paddlehub
官方文档地址:https://github.com/PaddlePaddle/PaddleOCR/blob/develop/doc/doc_ch/serving.md
pip3 install paddlehub --upgrade -i https://pypi.tuna.tsinghua.edu.cn/simple
安装过程中提示“ModuleNotFoundError: No module named 'skbuild'” ,原因是一些依赖模块没有安装,执行下面命令进行安装。
pip3 install cmake -i https://pypi.tuna.tsinghua.edu.cn/simple
pip3 install scikit-build -i https://pypi.tuna.tsinghua.edu.cn/simple
安装完成后,重新执行安装paddlehub,安装过程中执行opencv-python一直卡住不动,可以尝试升级pip版本再试。
我安装时有一个警告提示:
WARNING: The script hub is installed in '/usr/local/python3.7/bin' which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
export添加到环境变量中export PATH=$PATH:/usr/local/python3.7/bin
执行下面命令,添加linux环境变量,方便后面使用hub命令。
export PYTHONPATH=.
2.安装服务模块
下载PaddleOCR源码到本地,github地址:https://github.com/PaddlePaddle/PaddleOCR
这里我放在了/opt目录下,解压缩
unzip PaddleOCR-develop.zip
切换到PaddleOCR-develop目录下,准备安装服务模块。
PaddleOCR提供3种服务模块,根据需要安装所需模块。安装示例如下:
安装检测服务模块
hub install deploy/hubserving/ocr_det/
安装识别服务模块
hub install deploy/hubserving/ocr_rec/
安装检测+识别串联服务模块
hub install deploy/hubserving/ocr_system/
ps:若提示bash: hub: command not found... 则就把上面的/usr/local/python3.7/bin添加到环境变量中。
我这里提示了另一个错误,
not find model file path ./inference/ch_det_mv3_db//model
模型路径不对,找到deploy/hubserving/ocr_system/params.py中,将文字检测和文字识别模型地址改为你对应的路径。
百度飞浆的模型提供下载地址:https://github.com/PaddlePaddle/PaddleOCR/blob/develop/doc/doc_ch/quickstart.md
#params for text detector
cfg.det_algorithm = "DB"
cfg.det_model_dir = "./inference/ch_det_mv3_db/"
cfg.det_max_side_len = 960
#params for text recognizer
cfg.rec_algorithm = "CRNN"
cfg.rec_model_dir = "./inference/ch_rec_mv3_crnn/"
安装成功提示
Successfully installed ocr_system
执行hub list 看是否安装成功
3.启动服务
启动方式有两种,一种是命令行方式,一种是配置文件方式,这里我使用配置文件方式,其他大家可参考官方文档。
找到/ocr_system/config.json文件,打开并修改相应的参数。
{
"modules_info": {
"ocr_system": {
"init_args": {
"version": "1.0.0",
"use_gpu": false
},
"predict_args": {
}
}
},
"port": 8868,
"use_multiprocess": false,
"workers": 2
}
因为我本地环境是cpu所以就只是把use_gpu:false。启动服务
hub serving start -c deploy/hubserving/ocr_system/config.json