paddleocr使用FastDeploy 部署工具部署 rknn 模型

在 PC 端转换 pdmodel 模型为 rknn 模型和在板端使用百度飞浆开发的 FastDeploy 部署工具部署 rknn 模型

以下内容是在 PC 端系统为 Ubuntu20.04,板端系统为ubuntu20.04 的环境下实现的

描述:

官网地址

rknn_zoo RKNPU2_SDK RKNN Model Zoo

RKNN软件栈可以帮助用户快速将AI模型部署到Rockchip芯片中,整体框架如下:

使用RKNPU,用户需要先在电脑上运行RKNN-Toolkit2工具,将训练好的模型转化为RKNN格式模型,然后在开发板上使用RKNN C API或者Python API进行推理。

  • RKNN-Toolkit2是一套软件开发套件,供用户在PC和Rockchip NPU平台上进行模型转换、推理和性能评估。

  • RKNN-Toolkit-Lite2为Rockchip NPU平台提供Python编程接口,帮助用户部署RKNN模型,加速AI应用的落地。

  • RKNN Runtime 为 Rockchip NPU 平台提供 C/C++ 编程接口,帮助用户部署 RKNN 模型,加速 AI 应用的落地。

  • RKNPU内核驱动负责和NPU硬件交互,已经开源,可以在Rockchip内核代码中找到。

支持平台

  • RK3588系列
  • RK3576系列
  • RK3566/RK3568系列
  • RK3562系列
  • RV1103/RV1106
  • RV1103B/RV1106B
  • RK2118

笔记

  • RKNN-Toolkit2 与RKNN-Toolkit不兼容
  • 支持的 Python 版本包括:
    • Python 3.6
    • Python 3.7
    • Python 3.8
    • Python 3.9
    • Python 3.10
    • Python 3.11
    • Python 3.12
  • 最新版本:v2.2.0

3.38.1. Ubuntu PC 端环境搭建

Ubuntu PC 端需要安装的工具及用途:

3.38.1.1.PC 端安装 Anaconda3(这个简单不在介绍)

3.38.1.2.PC 端安装 RKNN-Toolkit2

1、创建一个环境:

复制代码
conda create -n fastdeploy python==3.9

conda activate fastdeploy

2、安装 pip3 开发工具和包管理工具

复制代码
sudo apt-get install python3-dev python3-pip

安装 RKNN-Toolkit2 的依赖包

复制代码
sudo apt-get install libxslt1-dev zlib1g-dev libglib2.0 libs
m6 libgl1-mesa-glx libprotobuf-dev gcc

rknn_toolkit2 对 numpy 存在特定依赖

复制代码
pip install numpy==1.19.4 --only-binary=:all: -i https://pypi.tuna.tsinghua.edu.cn/simple

安装 git 工具

复制代码
sudo apt install git

git clone https://github.com/rockchip-linux/rknn-toolkit2

安装 python3.8 版本对应的 RKNN-Toolkit2

复制代码
cd rknn-toolkit2/rknn-toolkit2/packages/

pip install rknn_toolkit2-1.6.0+81f21f4d-cp39-cp39-linux_x86_64.whl -i https://pypi.tuna.tsinghua.edu.cn/simple

报错:

ERROR: Ignored the following versions that require a different python version: 1.14.0 Requires-Python >=3.10; 1.14.0rc1 Requires-Python >=3.10; 1.14.0rc2 Requires-Python >=3.10; 1.14.1 Requires-Python >=3.10; 2.1.0 Requires-Python >=3.10; 2.1.0rc1 Requires-Python >=3.10; 2.1.1 Requires-Python >=3.10; 2.1.2 Requires-Python >=3.10

ERROR: Could not find a version that satisfies the requirement tf-estimator-nightly==2.8.0.dev2021122109 (from tensorflow) (from versions: none)

ERROR: No matching distribution found for tf-estimator-nightly==2.8.0.dev2021122109

解决方法:

不能在改python版本了,要不然一直报错,降低tensorflow的版本

复制代码
pip install tensorflow==2.6.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
  • RKNN-Toolkit2 与RKNN-Toolkit不兼容
  • 目前仅支持:
    • Ubuntu 18.04 Python 3.6/3.7
    • Ubuntu 20.04 Python 3.8/3.9
    • Ubuntu 22.04 Python 3.10/3.11

3.38.1.3.PC 端安装 Paddle2ONNX

复制代码
pip install paddle2onnx -i https://pypi.tuna.tsinghua.edu.cn/simple

3.38.2. 板端环境搭建

板端需要安装的工具及用途

3.38.2.1.板端安装 Anaconda3

1、在板端打开浏览器,在地址栏输入下面的网址下载安装 Anaconda3 的脚本

https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2023.07-1-Linux-x86_64.sh

2、运行 Anaconda3-2023.07-1-Linux-aarch64.sh 脚本安装 Anaconda3

复制代码
sh Anaconda3-2023.07-1-Linux-aarch64.sh

完成安装

3、如果在终端使用 conda 命令,显示命令不存在,需要修改~/.bashrc 文件

复制代码
sudo apt-get update
sudo apt-get install gedit

gedit ~/.bashrc

在~/.bashrc 文件末尾加上

复制代码
export PATH=/home/orangepi/anaconda3/bin:$PATH

修改生效:

复制代码
source ~/.bashrc

conda的初始化:

复制代码
conda init bash

关闭当前终端,重新打开一个终端,完成!!!

3.38.2.2.板端安装 rknpu2 驱动

1)在板端打开终端,通过 Anaconda3 工具创建 python 版本为 3.9 的环境

复制代码
conda create -n fastdeploy python=3.9

报错:

failed

CondaHTTPError: HTTP 000 CONNECTION FAILED for url <https://repo.anaconda.com/pkgs/main/linux-aarch64/current_repodata.json\>

解决方法:

添加清华镜像源

复制代码
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --set show_channel_urls yes

conda activate fastdeploy

3)通过 wget 下载 rknpu2_device_install_1.4.0.zip 文件

复制代码
wget https://bj.bcebos.com/fastdeploy/third_libs/rknpu2_device_install_1.4.0.zip

4)然后执行的下面的命令解压 rknpu2_device_install_1.4.0.zip, 解压后会得到

rknpu2_device_install_1.4.0 文件夹和__MACOSX 文件夹

复制代码
unzip rknpu2_device_install_1.4.0.zip

5)切换到 rknpu2_device_install_1.4.0 目录下

复制代码
cd rknpu2_device_install_1.4.0/

6)在该目录下有 rknn_install_rk3588.sh 脚本,运行该脚本,即可完成板端 rknpu2

驱动的安装

(fastdeploy)orangepi@orangepi:~/rknpu2_device_install_1.4.0$

复制代码
sudo bash rknn_install_rk3588.sh

走到这一部报错了具体原因不清楚,换了一种方法操作,完成之后在更新出来

找到问题了,我的笔记本22.04的,板子是20.04,所以22.04需要装python3.10或3.11的

仅供参考!

相关推荐
数据皮皮侠AI20 小时前
顶刊同款!中国地级市风灾风险与损失数据集(2000-2022)|灾害 / 环境 / 经济研究必备
大数据·人工智能·笔记·能源·1024程序员节
Fab1an2 天前
Busqueda——Hack The Box 靶机
linux·服务器·学习·1024程序员节
技术专家2 天前
Stable Diffusion系列的详细讨论 / Detailed Discussion of the Stable Diffusion Series
人工智能·python·算法·推荐算法·1024程序员节
学传打活5 天前
古代汉语是源,现代汉语是流,源与流一脉相承。
微信公众平台·1024程序员节·汉字·中华文化
学传打活10 天前
【边打字.边学昆仑正义文化】_19_星际生命的生存状况(1)
微信公众平台·1024程序员节·汉字·昆仑正义文化
unable code17 天前
[HNCTF 2022 WEEK2]ez_ssrf
网络安全·web·ctf·1024程序员节
unable code18 天前
[NISACTF 2022]easyssrf
网络安全·web·ctf·1024程序员节
unable code19 天前
BUUCTF-[第二章 web进阶]SSRF Training
网络安全·web·ctf·1024程序员节
开开心心就好20 天前
进程启动瞬间暂停工具,适合调试多开
linux·运维·安全·pdf·智能音箱·智能手表·1024程序员节
仰泳之鹅21 天前
【51单片机】第一课:单片机简介与软件安装
单片机·嵌入式硬件·51单片机·1024程序员节