当前位置: 首页 > news >正文

Ubuntu 14.04:PaddleOCR基于PaddleServing的在线服务化部署(失败)

一、

二、安装

注:

安装 PaddleOCR 2.3 。

因为 PaddleOCR 2.4 的 推荐环境 PaddlePaddle >= 2.1.2。

https://github.com/PaddlePaddle/PaddleOCR/blob/release/2.4/doc/doc_ch/environment.md

安装前的环境准备

在使用Paddle Serving之前,需要完成如下任务:

(1)安装python 3.8 

具体安装方法请参见 Ubuntu 14.04:安装PaddlePaddle(Conda安装)-CSDN博客 


(2)安装paddlepaddle 2.0.0

具体安装方法请参见 Ubuntu 14.04:安装PaddlePaddle(Conda安装)-CSDN博客 

 参考资料:https://github.com/PaddlePaddle/PaddleOCR/blob/release/2.3/doc/doc_ch/environment.md

安装时的运行环境准备

准备 PaddleOCR 的运行环境链接

下载 PaddleOCR 2.3

https://codeload.github.com/PaddlePaddle/PaddleOCR/zip/refs/heads/release/2.3

上传到目标位置,解压

unzip PaddleOCR-release-2.3.zip

注:

官方文档中,是 clone。

因为我 clone 时有异常,偷懒不想处理,就直接下载包,然后安装。

查看 github 中的 PaddleOCR 版本

GitHub - PaddlePaddle/PaddleOCR

准备 PaddleServing 的运行环境

参考资料:https://github.com/PaddlePaddle/Serving/blob/v0.9.0/doc/Latest_Packages_EN.md

 查看版本

https://github.com/PaddlePaddle/Serving

切换到 PaddleOCR 的运行环境中的 pdserving 目录

/home/xxx/PaddleOCR-release-2.3/deploy/pdserving
 

paddle-serving-server:paddle_serving_server-0.9.0-py3-none-any.whl

安装server,用于启动服务

下载

wget https://paddle-serving.bj.bcebos.com/test-dev/whl/paddle_serving_server-0.9.0-py3-none-any.whl

安装

注:此处需要进入paddlepaddle所在的Anaconda虚拟环境,那里面才有pip3。

pip3 install paddle_serving_server-0.9.0-py3-none-any.whl

paddle-serving-app:paddle_serving_app-0.9.0-py3-none-any.whl

下载

wget https://paddle-serving.bj.bcebos.com/test-dev/whl/arm/paddle_serving_app-0.9.0-py3-none-any.whl

安装

注:此处需要进入paddlepaddle所在的Anaconda虚拟环境,那里面才有pip3。

pip3 install paddle_serving_app-0.9.0-py3-none-any.whl

paddle-serving-client: paddle_serving_client-0.9.0-cp38-none-any.whl

安装client,用于向服务发送请求。

下载

下载链接:

https://github.com/PaddlePaddle/Serving/blob/v0.9.0/doc/Latest_Packages_EN.md

注:不同的Python版本,对应不同哦!

也可以直接用wget:

wget https://paddle-serving.bj.bcebos.com/test-dev/whl/paddle_serving_client-0.9.0-cp38-none-any.whl

whl包放到目标位置

/home/xxx/PaddleOCR-release-2.3/deploy/pdserving

安装

注:此处需要进入paddlepaddle所在的Anaconda虚拟环境,那里面才有pip3。

pip3 install paddle_serving_client-0.9.0-cp38-none-any.whl

inference 模型转换

使用PaddleServing做服务化部署时,需要将保存的inference模型转换为serving易于部署的模型。

模型存放位置

切换到 PaddleOCR 的运行环境中的 pdserving 目录
/home/xxx/PaddleOCR-release-2.3/deploy/pdserving

创建目录:inference

mkdir inference

模型存放位置

/home/xxx/PaddleOCR-release-2.3/deploy/pdserving/inference

模型下载链接

模型下载链接1

GitHub - PaddlePaddle/PaddleOCR at release/2.3

 模型下载链接2:https://github.com/PaddlePaddle/PaddleOCR/blob/release/2.3/doc/doc_en/models_list_en.md

OCR 文本检测模型

下载并解压

可以下载包,上传至目标位置,也可以wget。

我这里是wget,省去上传的步骤。

wget https://paddleocr.bj.bcebos.com/PP-OCRv2/chinese/ch_PP-OCRv2_det_infer.tar -O ch_PP-OCRv2_det_infer.tar && tar -xf ch_PP-OCRv2_det_infer.tar

转换模型

OCR 文本识别模型

下载并解压

可以下载包,上传至目标位置,也可以wget。

我这里是wget,省去上传的步骤。

wget https://paddleocr.bj.bcebos.com/PP-OCRv2/chinese/ch_PP-OCRv2_rec_infer.tar -O ch_PP-OCRv2_rec_infer.tar &&  tar -xf ch_PP-OCRv2_rec_infer.tar

转换模型

异常处理

上面转换模型时,出现下面的异常

ImportError: dlopen: cannot load any more object with static TLS

问题点:~/workspace/anaconda3/envs/paddle_env/lib/python3.8/site-packages/paddle/fluid/core.py

dlopen: cannot load any more object with static TLS问题解决-CSDN博客

解决方案:升级glibc版本到2.23。

20240312 娟娟:因为glibc升级可能引起系统奔溃,所以下面流程不再处理,转 PaddleHub Serving 。

http://www.lryc.cn/news/316684.html

相关文章:

  • Java JUC 笔记(2)
  • webpack5高级--02_提升打包构建速度
  • MAC M芯片 Anaconda安装
  • 【JS】自动下拉网页刷新,当出现指定关键字,就打印出来
  • 中兴通讯联手新疆移动,开通全疆首个乡农场景700M+900M双频双模基站
  • 爬虫案例4: parsel 模块的运用
  • 数据结构·复杂度
  • 数学建模理论与实践国防科大版
  • Yakit爆破模块应用
  • 【3GPP】【核心网】【5G】NAS连接管理和UE注册管理状态(超详细)
  • 细粒度IP定位参文2(Corr-SLG):A street-level IP geolocation method (2021年)
  • Mac上使用M1或M2芯片的设备安装Node.js时遇到一些问题,比如卡顿或性能问题
  • 学习vue3第四节(ref以及ref相关api)
  • 关于电脑无法开启5G频段热点的解决方案
  • 清理磁盘空间 - Win系统
  • 科技革新的引擎-2024年AI辅助研发趋势
  • 【PTA】L1-021 L1-022 L1-023 L1-024 L1-025(C)第四天
  • Stable Diffusion 如何写好提示词(Prompt)
  • 树莓派Py程序加入开机自启
  • Java EasyExcel注解详解和实战案例
  • AHU 汇编 实验二
  • Spring Boot单元测试与热部署简析
  • 3.12练习题解
  • Java中实现双向链表
  • 【DevOps实战之k8s】使用Prometheus和Grafana监控K8S集群
  • 【读论文】【精读】3D Gaussian Splatting for Real-Time Radiance Field Rendering
  • JVM理解学习
  • 使用 Ruby 或 Python 在文件中查找
  • python实现冒泡排序
  • 大数据开发(HBase面试真题-卷二)