PaddleOCR部署和使用
PaddleOCR部署和使用
cmyang简介
PaddleOCR 旨在打造一套丰富、领先、且实用的 OCR 工具库,助力开发者训练出更好的模型,并应用落地。
Github:https://github.com/PaddlePaddle/PaddleOCR
文档:https://paddlepaddle.github.io/PaddleOCR/index.html
CPU部署
命令模式
文档地址:https://paddlepaddle.github.io/PaddleOCR/ppocr/quick_start.html
环境:ubuntu 24.04,python 3.11
conda创建python环境3.11pip install paddlepaddle==2.5.2
pip install paddleocr
问题:
pip install paddlepaddle使用最新的版本2.6.1会报错
1 | ---------------------- |
执行测试:paddleocr --image_dir ./imgs/11.jpg --use_angle_cls true --use_gpu false
基于PaddleServing的服务部署
文档:https://paddlepaddle.github.io/PaddleOCR/ppocr/infer_deploy/paddle_server.html
环境准备
python环境:conda创建python环境3.7
获取代码:git clone https://github.com/PaddlePaddle/PaddleOCR
进入代码目录,切换分支到v2.8.1,git checkout tags/v2.8.1
,通过git branch
查看分支是否正确
进入目录PaddleOCRpip install -r requirements.txt
进入到工作目录cd PaddleOCR/deploy/pdserving/
安装serving
官方地址:https://github.com/PaddlePaddle/Serving/blob/v0.8.3/doc/Latest_Packages_CN.md
这里下载cpu版本
1 | wget https://paddle-serving.bj.bcebos.com/test-dev/whl/paddle_serving_server-0.8.3-py3-none-any.whl |
安装client
1 | wget https://paddle-serving.bj.bcebos.com/test-dev/whl/paddle_serving_client-0.8.3-cp37-none-any.whl |
安装serving-app
1 | wget https://paddle-serving.bj.bcebos.com/test-dev/whl/paddle_serving_app-0.8.3-py3-none-any.whl |
模型转换
使用PaddleServing做服务化部署时,需要将保存的inference模型转换为serving易于部署的模型。
下载模型
1 | # 下载并解压 OCR 文本检测模型 |
接下来,用安装的paddle_serving_client把下载的inference模型转换成易于server部署的模型格式。
1 | # 先安装依赖 |
检测模型转换完成后,会在当前文件夹多出ppocr_det_v3_serving 和ppocr_det_v3_client的文件夹
Paddle Serving pipeline部署
修改config.yml
1 | op: |
启动服务nohup python3 web_service.py --config=config.yml &>log.txt &
测试:python3 pipeline_http_client.py
使用HTTP访问
POST:http://10.66.4.24:9998/ocr/prediction{"key":["image"], "value":["图片base64"]}