百度飞桨(PaddlePaddle) - PP-OCRv3 文字检测识别系统 基于 Paddle Serving快速使用(服务化部署 - Docker)
2023/6/1 14:22:07
本文主要是介绍百度飞桨(PaddlePaddle) - PP-OCRv3 文字检测识别系统 基于 Paddle Serving快速使用(服务化部署 - Docker),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
-
安装
- Docker 安装
- PaddleOCR 安装
- 准备PaddleServing的运行环境,
- 模型转换
- Paddle Serving pipeline部署
- 重启
- 测试
百度飞桨(PaddlePaddle) - PP-OCRv3 文字检测识别系统 预测部署简介与总览
百度飞桨(PaddlePaddle) - PP-OCRv3 文字检测识别系统 Paddle Inference 模型推理(离线部署)
百度飞桨(PaddlePaddle) - PP-OCRv3 文字检测识别系统 基于 Paddle Serving快速使用(服务化部署 - CentOS)
百度飞桨(PaddlePaddle) - PP-OCRv3 文字检测识别系统 基于 Paddle Serving快速使用(服务化部署 - Docker)推荐
查看版本
https://hub.docker.com/r/paddlepaddle/paddle/tags/?page=1&name=cpu
安装
Docker 安装
# 切换进 opt/ppocr 目录 [root@localhost ~]# cd /opt/ppocr/ [root@localhost ppocr]# pwd /opt/ppocr [root@localhost ppocr]# # 获取镜像 [root@localhost ppocr]# docker pull registry.baidubce.com/paddlepaddle/paddle:2.2.2 # 创建一个名字为ppocr的docker容器,并将当前目录映射到容器的/paddle目录下 [root@localhost ppocr]# docker run --name ppocr -v $PWD:/paddle --network=host -it registry.baidubce.com/paddlepaddle/paddle:2.2.2 /bin/bash # --name ppocr:设定 Docker 的名称,ppocr 是自己设置的名称; # -it:参数说明容器已和本机交互式运行; # -v $PWD:/paddle:指定将当前路径(PWD 变量会展开为当前路径的绝对路径)挂载到容器内部的 /paddle 目录;(相当于 /opt/ppocr 挂载到容器内) # registry.baidubce.com/paddlepaddle/paddle:2.2.2:指定需要使用的 image 名称,您可以通过docker images命令查看;/bin/bash 是在 Docker 中要执行的命令 # ctrl+P+Q可退出docker 容器,重新进入docker 容器使用如下命令 [root@localhost ppocr]# docker exec -it ppocr /bin/bash λ localhost /home
PaddleOCR 安装
# 升级 pip pip install -U pip # 容器中已经包含了 paddlepaddle 2.2.2 pip list # 拉取 PaddleOCR 代码 git clone https://gitee.com/paddlepaddle/PaddleOCR.git # 切换进入 PaddleOCR 目录 cd PaddleOCR # 安装运行所需要的whl包 pip install -r requirements.txt -i https://mirror.baidu.com/pypi/simple
准备PaddleServing的运行环境,
# 安装serving,用于启动服务 wget https://paddle-serving.bj.bcebos.com/test-dev/whl/paddle_serving_server-0.8.3-py3-none-any.whl pip install paddle_serving_server-0.8.3-py3-none-any.whl -i https://pypi.tuna.tsinghua.edu.cn/simple # 安装client,用于向服务发送请求 wget https://paddle-serving.bj.bcebos.com/test-dev/whl/paddle_serving_client-0.8.3-cp37-none-any.whl pip install paddle_serving_client-0.8.3-cp37-none-any.whl -i https://pypi.tuna.tsinghua.edu.cn/simple # 安装serving-app wget https://paddle-serving.bj.bcebos.com/test-dev/whl/paddle_serving_app-0.8.3-py3-none-any.whl pip install paddle_serving_app-0.8.3-py3-none-any.whl -i https://pypi.tuna.tsinghua.edu.cn/simple
模型转换
首先,下载PP-OCR的inference模型
cd deploy/pdserving/ # 下载并解压 OCR 文本检测模型 wget https://paddleocr.bj.bcebos.com/PP-OCRv3/chinese/ch_PP-OCRv3_det_infer.tar -O ch_PP-OCRv3_det_infer.tar && tar -xf ch_PP-OCRv3_det_infer.tar # 下载并解压 OCR 文本识别模型 wget https://paddleocr.bj.bcebos.com/PP-OCRv3/chinese/ch_PP-OCRv3_rec_infer.tar -O ch_PP-OCRv3_rec_infer.tar && tar -xf ch_PP-OCRv3_rec_infer.tar # 用安装的paddle_serving_client把下载的inference模型转换成易于server部署的模型格式。 # 转换检测模型 python -m paddle_serving_client.convert --dirname ./ch_PP-OCRv3_det_infer/ \ --model_filename inference.pdmodel \ --params_filename inference.pdiparams \ --serving_server ./ppocr_det_v3_serving/ \ --serving_client ./ppocr_det_v3_client/ # 转换识别模型 python -m paddle_serving_client.convert --dirname ./ch_PP-OCRv3_rec_infer/ \ --model_filename inference.pdmodel \ --params_filename inference.pdiparams \ --serving_server ./ppocr_rec_v3_serving/ \ --serving_client ./ppocr_rec_v3_client/ # 查看文件夹 ll ppocr_det_v3_client ppocr_det_v3_serving ppocr_rec_v3_serving ppocr_rec_v3_client
Paddle Serving pipeline部署
启动服务,测试时使用,窗口关闭服务停止 python web_service.py --config=config.yml # 启动服务(后台运行),运行日志保存在log.txt nohup python web_service.py --config=config.yml &>log.txt & tail -f ./log.txt
重启
# 如果容器停止,重启容器 docker restart ppocr # 进入容器 docker exec -it ppocr /bin/bash # 切换目录 cd PaddleOCR/deploy/pdserving/ # 启动服务 python web_service.py --config=config.yml
测试
参考 :
https://www.paddlepaddle.org.cn/documentation/docs/zh/install/docker/linux-docker.html
https://www.paddlepaddle.org.cn/tutorials/projectdetail/3946013
https://gitee.com/paddlepaddle/PaddleOCR/blob/release/2.6/doc/doc_ch/installation.md
https://gitee.com/paddlepaddle/PaddleOCR/blob/release/2.6/deploy/pdserving/README_CN.md
这篇关于百度飞桨(PaddlePaddle) - PP-OCRv3 文字检测识别系统 基于 Paddle Serving快速使用(服务化部署 - Docker)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-14Docker端口:你真的公开了哪些东西?
- 2024-11-14用DOCKER在家里的实验室里搞些酷炫的玩意儿
- 2024-11-05掌握Docker:高效安全的十大最佳实践
- 2024-11-05在 Docker Compose 中怎么设置端口映射-icode9专业技术文章分享
- 2024-11-05在 Docker Compose 中怎么设置环境变量-icode9专业技术文章分享
- 2024-11-04Docker环境部署项目实战:新手入门教程
- 2024-11-04Docker环境部署资料:新手入门教程
- 2024-11-01Docker环境部署教程:新手入门指南
- 2024-11-01超越Docker:苹果芯片上的模拟、编排和虚拟化方案讲解
- 2024-11-01Docker环境部署:新手入门教程