ARM端部署PP-OCR_V3(系统环境)

PaddleOCR 的 Jetson 部署-官方文档

一、预准备

  1. 下载对应的whl:下载安装Linux预测库 根据系统(win和linux),语言(C++,C,Python),语言版本,CUDA版本,Jetson版本,硬件系统(nano,NX,TX,AGX)等等,一定要选对了

  2. 升级 pip
    如果您到 pip 默认源的网络连接较差,临时使用本镜像站来升级 pip:

    python3.7 -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --upgrade pip

    python3.7 -m pip install --upgrade pip

  3. 换源
    python3.7 -m pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

二、安装PaddlePaddle

python3.7 -m pip install -U paddlepaddle_gpu-2.3.2-cp37-cp37m-linux_aarch64.whl


>解决警告:
>```
>WARNING: The scripts pip, pip3 and pip3.6 are installed in '/home/agx2/.local/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.
> ```
>解决方法:
>```
>sudo gedit ~/.bashrc
>export PATH=/home/agx2/.local/bin:$PATH #最后一行添加
>source ~/.bashrc
>```
---

三、下载PaddleOCR代码并安装依赖

首先 clone PaddleOCR 代码:

git clone https://github.com/PaddlePaddle/PaddleOCR

然后,安装依赖:

cd PaddleOCR

python3.7 -m pip install -r requirements.txt

python -m pip install paddleocr


报错 :

note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error
× pip subprocess to install build dependencies did not run successfully.
│ exit code: 1
╰─> See above for output.
note: This error originates from a subprocess, and is likely not a problem with pip.

解决:

  1. sudo python3.7 -m pip install opencv-contrib-python
  2. 注释掉requirements.txt中的: #opencv-contrib-python==4.4.0.46
  3. 继续执行python3.7 -m pip install -r requirements.txt

四、执行预测

从文档模型库中获取PPOCR模型,下面以PP-OCRv3模型为例,介绍在PPOCR模型在jetson上的使用方式:

下载并解压PP-OCRv3模型:

  • wget https://paddleocr.bj.bcebos.com/PP-OCRv3/chinese/ch_PP-OCRv3_det_infer.tar
  • wget https://paddleocr.bj.bcebos.com/PP-OCRv3/chinese/ch_PP-OCRv3_rec_infer.tar
  • tar xf ch_PP-OCRv3_det_infer.tar
  • tar xf ch_PP-OCRv3_rec_infer.tar

执行文本检测预测:

  • cd PaddleOCR
  • python3.7 tools/infer/predict_det.py --det_model_dir=./ch_PP-OCRv3_det_infer --image_dir=./doc/imgs/french_0.jpg --use_gpu=True

报错:

OSError: Could not find lib geos_c or load any of its variants ['libgeos_c.so.1', 'libgeos_c.so'].

解决:

  • sudo apt-get install libgeos-dev

  • 再次执行
    python3.7 tools/infer/predict_det.py --det_model_dir=./ch_PP-OCRv3_det_infer --image_dir=./doc/imgs/french_0.jpg --use_gpu=True

  • 结果在./inference_results


conda 环境的使用

conda环境的设置没有太大的变化,

  1. 需要在arm端安装miniconda
  2. 创建conda中的python环境,按照paddlepaddle的情况去配置
  3. conda环境中的python要安装这几个包:pip install rospkg catkin_tools
  4. 执行的节点代码开头的#! /usr/bin/env python3.7改为#! /home/gsh/anaconda3/envs/pplabel/bin/python
  5. 按照系统环境以上过程进行即可

  • 报错,缺少libgeos_c.os
  • 解决:conda install geopandas

ARM端部署PP-OCR_V3相关推荐

  1. PyTorch 1.3发布:能在移动端部署,支持Colab云TPU,阿里云上也能用

    本文经AI新媒体量子位(公众号ID:qbitai)授权转载,转载请联系出处. 本文约2700字,建议阅读7分钟. 本文向你介绍 PyTorch1.3 的新特性. "我要转PyTorch!&q ...

  2. PyTorch 1.3发布!能在移动端部署,支持Colab云TPU,阿里云上也能用

    点击我爱计算机视觉标星,更快获取CVML新技术 晓查 一璞 发自 凹非寺 量子位 报道 | 公众号 QbitAI "我要转PyTorch!" 看到1.3版本的新特性之后,有开发者在 ...

  3. Firefly AIO-3399ProC开发板与PC端部署Qt5.12.2交叉编译环境

    文章目录 前言 一.Qt是什么? 二.开发部署环境 三.部署Qt5.12.2交叉编译环境 3.1 安装前的相关包下载及环境准备 3.2 在开发板端部署Qt5.12.2交叉编译环境 3.3 在PC端部署 ...

  4. linux下frp客户端服务端部署(超详细)

    实际需求:实时远程项目现场的arm工控机的ssh以及应用的web页面 现场环境:arm工控机可以通过4g路由器上网,但是使用普通流量卡没有公网IP,无法直接通过公网IP来访问设备的ssh以及web服务 ...

  5. 移动端调取摄像头上面如何给出框_飞桨实战笔记:自编写模型如何在服务器和移动端部署...

    ​ 作为深度学习小白一枚,从一开始摸索如何使用深度学习框架,怎么让脚本跑起来,到现在开始逐步读懂论文,看懂模型的网络结构,按照飞桨官方文档进行各种模型训练和部署,整个过程遇到了无数问题.非常感谢飞桨开 ...

  6. nuxt服务端php,nuxt服务端部署指南

    nuxt是一款基于vue的服务端渲染框架,语法和vue基本保持一致,不过生命周期与vue不同,部署方式也和vue大相径庭,vue项目部署是spa的静态页面,只需build出来静态页面,但是nuxt是需 ...

  7. mac 安装node_node 服务端部署

    在服务端部署node环境 1.准备服务器资源: 国内的 阿里云 .腾讯云.华为云等 都可以选择: 购置完一块 服务器后: 将会得到一个 IP地址,root账号密码: 2.此时可以用 远程 ssh链接 ...

  8. 飞桨模型保存_飞桨实战笔记:自编写模型如何在服务器和移动端部署

    ​ 作为深度学习小白一枚,从一开始摸索如何使用深度学习框架,怎么让脚本跑起来,到现在开始逐步读懂论文,看懂模型的网络结构,按照飞桨官方文档进行各种模型训练和部署,整个过程遇到了无数问题.非常感谢飞桨开 ...

  9. ming window 交叉编译_opencv3编译pc端及交叉编译arm端

    环境: opensuse   opencv3.4.1    交叉编译器arm-openwrt-linux  作者:帅得不敢出门 https://github.com/opencv/opencv/tre ...

最新文章

  1. 使用Python统计Linux系统内存
  2. 创建用于 ASP.NET 的分页程序控件
  3. ★☆★ lc 847. Shortest Path Visiting All Nodes
  4. 查找窗口隐藏了怎么办_如何还原U盘隐藏空间 U盘隐藏空间还原方法【详解】
  5. 像@Transactional一样利用注解自定义aop切片
  6. .Net Discovery系列之四 深入理解.Net垃圾收集机制(下)
  7. 学习进度(2016.3.13)
  8. Python: PyCharm中导入matplotlib时报错:“Backend Qt5Agg is interactive backend”的解决方案...
  9. datatables 配套bootstrap3样式使用小结(1)
  10. 中国家禽细菌学诊断行业市场供需与战略研究报告
  11. Python 黑帽子 netcat工具python3实现
  12. SYN6288语音合成模块
  13. 南大计算机专业课表,南大课程表
  14. 学生用计算机中怎样输入分数,职称计算机考试Excel中输入分数技巧
  15. android图形计算器,Desmos图形计算器
  16. Unity Text字体花屏
  17. 基于QT+Opencv的红眼去除
  18. 设计模式必备知识点----六大设计原则
  19. 快速入门Spring之SpringIOC
  20. 多功能网线DIY 到哪都用一根网线(图)

热门文章

  1. latex公式实现居中,多行公式同一个编号
  2. CODING 敏捷实战系列课第二讲:Scrum 敏捷项目管理核心要素之 3355
  3. android应用搬家的实现
  4. 面试篇之JVM(GC 可达性分析 回收算法 卡表 G1)
  5. 2021 年广东省职业院校技能大赛(国赛遴选赛卷(A))
  6. 水星(MERCURY) UD13HM(免驱版本) usb无线网卡
  7. 极地遥感学习笔记(一)——冰间水道
  8. 技巧分享:如何给pdf文件加密
  9. 数据结构-线性表知识总结
  10. 电能管理系统功能界面展示—安科瑞 孙斌