简介
PaddleOCR旨在打造一套丰富、领先、且实用的OCR工具库,助力使用者训练出更好的模型,并应用落地。
查看本机的操作系统和位数信息
1 | uname -m && cat /etc/*release |
确认需要安装 PaddlePaddle 的 Python 是您预期的位置,因为您计算机可能有多个 Python
1 | which python3 |
如果您是使用 Python 3,使用以下命令确认是 3.5.1+/3.6/3.7
1 | python3 --version |
需要确认pip的版本是否满足要求,要求pip版本为9.0.1+
如果您是使用 Python 3
1 | python3 -m ensurepip |
需要确认Python和pip是64bit,并且处理器架构是x86_64(或称作x64、Intel 64、AMD64)架构,目前PaddlePaddle不支持arm64架构。下面的第一行输出的是”64bit”,第二行输出的是”x86_64”、”x64”或”AMD64”即可:
使用 Python 3
1 | python3 -c "import platform;print(platform.architecture()[0]);print(platform.machine())" |
若没有安装 安装 python3 和 pip3 则使用下面命令安装
1 | yum install python3 python3-pip -y |
更新 pip3
1 | pip3 install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple |
安装 paddlepaddle
1 | python3 -m pip install paddlepaddle==1.8.5 -i https://pypi.tuna.tsinghua.edu.cn/simple |
安装 paddlehub
1 | pip3 install paddlehub --upgrade -i https://pypi.tuna.tsinghua.edu.cn/simple |
若安装过程没有报错,则安装成功。
若提升 timeout 超时,重新运行安装命令,或者更换源后再次运行命令
若出现版本不匹配错误,如下:
1 | ERROR: After October 2020 you may experience errors when installing or updating packages. This is because pip will change the way that it resolves dependency conflicts. |
手动安装指定版本依赖,命令如下
1 | pip3 install matplotlib==2.2.4 -i https://pypi.tuna.tsinghua.edu.cn/simple |
解决依赖错误后,重新运行响应安装命令则可安装成功
下载源码
1 | git clone https://gitee.com/PaddlePaddle/PaddleOCR |
移动到指定路径
1 | mv PaddleOCR /PaddleOCR |
安装依赖
1 | cd /PaddleOCR |
下载模型
1 | mkdir -p /PaddleOCR/inference && cd /PaddleOCR/inference && \ |
安装模型
1 | cd /PaddleOCR && export PYTHONPATH=. && \ |
出现:Successfully installed ocr_system
则安装成功
启动服务
1 | cd /PaddleOCR && export PYTHONPATH=. && \ |
出现 Running on http://0.0.0.0:8866/
等信息,表示运行成功
若要在后台一直运行,运行如下命令
1 | cd /PaddleOCR && export PYTHONPATH=. && \ |
测试服务
a. 计算待识别图片的Base64编码
b. 发送服务请求
1 | curl -H "Content-Type:application/json" -X POST --data "{\"images\": [\"填入图片Base64编码(需要删除'data:image/jpg;base64,')\"]}" http://localhost:8866/predict/ocr_system |
c. 返回结果(如果调用成功,会返回如下结果)
1 | {"msg":"","results":[[{"confidence":0.8403433561325073,"text":"约定","text_region":[[345,377],[641,390],[634,540],[339,528]]},{"confidence":0.8131805658340454,"text":"最终相遇","text_region":[[356,532],[624,530],[624,596],[356,598]]}]],"status":"0"} |