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的

仅供参考!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/458913.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Linux】进程调度 | 进程切换上下文数据

&#x1fa90;&#x1fa90;&#x1fa90;欢迎来到程序员餐厅&#x1f4ab;&#x1f4ab;&#x1f4ab; 主厨&#xff1a;邪王真眼 主厨的主页&#xff1a;Chef‘s blog 所属专栏&#xff1a;青果大战linux 总有光环在陨落&#xff0c;总有新星在闪烁 小感慨&#xff1a; …

区块链系统控制台Console的安装与运维

【要求】 登陆Linux 服务器&#xff0c;安装、部署区块链系统控制台 Console&#xff0c;并完成节点的运维。同 时&#xff0c;检查控制台是否能够正常运行。 【任务】 1. 登陆 linux 服务器&#xff0c;进入指定操作目录按下列要求完成控制的安装与部 署&#xff0c;并将安装过…

Rust语言的优缺点以及学习建议

在编程世界的不断演变中&#xff0c;Rust 作为一种重要的语言脱颖而出。它以安全性和性能为核心&#xff0c;正在获得开发者们的广泛关注。但究竟什么是 Rust&#xff1f;它为何如此受欢迎&#xff1f;在这篇博客中&#xff0c;我们将深入探讨 Rust 的世界&#xff0c;探索它的…

【三十七】【QT开发应用】使用QVideoWidget播放视频,QT模块缺失时更新安装模块步骤(利用虚拟网址打开应用加速)

效果展示 下面有一个按钮打开视频&#xff0c;点击按钮之后会出现一个弹窗选择文件&#xff0c;默认打开的是D盘&#xff0c;并且选择的文件的类型有.mp4 .flv或者所有文件。选择正确的视频文件之后可以正常播放视频。 widget.h 主窗口头文件 #pragma once#include <QtWid…

【设计模式系列】适配器模式(九)

目录 一、什么是适配器模式 二、适配器模式的角色 三、适配器模式的典型应用 四、适配器模式在InputStreamReader中的应用 一、什么是适配器模式 适配器模式&#xff08;Adapter Pattern&#xff09;是一种结构型设计模式&#xff0c;它允许将不兼容的接口转换为一个客户端…

【Vue】word / excel / ppt / pdf / 视频(mp4,mov) 预览

文件预览 Vue3一. word二. excel三. ppt四. pdf4.1 vue-pdf-embed4.2 iframe 五. 视频六&#xff1a;扩展——kkFileView Vue3 一. word 安装&#xff1a;npm install docx-preview父页面 <template><div><DocPreviewv-if"filePath.includes(docx)"…

Cisco Packet Tracer 8.0 路由器单臂路由配置

文章目录 单臂路由简介一、单臂路由的原理二、单臂路由的配置步骤三、单臂路由的优缺点四、应用场景 一&#xff0c;拓扑图搭建二&#xff0c;pc IP地址配置三&#xff0c;交换机Switch0配置四&#xff0c;配置路由器Router0五&#xff0c;测试 单臂路由简介 单臂路由&#xf…

Hadoop-001-本地虚拟机环境搭建

一、安装VMware 官方下载VMware&#xff1a; https://vmware.mdsoft.top/?bd_vid5754305114651491003 二、下载镜像文件 阿里云镜像仓库&#xff1a; https://mirrors.aliyun.com/centos/ 本文档使用 CentOS-7-x86_64-DVD-1810-7.6.iso 搭建虚拟机 三、搭建虚拟机 1、编辑…

【WRF数据准备】基于GEE下载静态地理数据-叶面积指数LAI及绿色植被率Fpar

【WRF数据准备】基于GEE下载静态地理数据 准备:WRF所需静态地理数据(Static geographical data)数据范围说明基于GEE下载叶面积指数及绿色植被率GEE数据集介绍数据下载:LAI(叶面积指数)和Fpar(绿色植被率)数据处理:基于Python处理为单波段LAI数据参考GEE的介绍可参见另…

VantUI

官网&#xff1a;Vant 4 - A lightweight, customizable Vue UI library for mobile web apps. Vant组件库&#xff1a; 基础组件 按钮、图标、布局、提示信息等 表单组件 日历、复选框、时间选择、输入框、评分等 反馈组件 弹出框、加载、下拉菜单、消息提示、下拉刷新、滚动…

面试阿里、字节全都一面挂,被面试官说我的水平还不如应届生

测试员可以先在大厂镀金&#xff0c;以后去中小厂毫无压力&#xff0c;基本不会被卡&#xff0c;事实果真如此吗&#xff1f;但是在我身上却是给了我很大一巴掌... 所谓大厂镀金只是不卡简历而已&#xff0c;如果面试答得稀烂&#xff0c;人家根本不会要你。况且要不是大厂出来…

C#入坑JAVA MyBatis入门 CURD 批量 联表分页查询

本文&#xff0c;分享 MyBatis 各种常用操作&#xff0c;不限于链表查询、分页查询等等。 1. 分页查询 在 下文的 的「3.4 selectPage」小节&#xff0c;我们使用 MyBatis Plus 实现了分页查询。除了这种方式&#xff0c;我们也可以使用 XML 实现分页查询。 这里&#xff0c…

1-petalinux2018.3 摸索记录 -petalinux-config

一、petalinux-config的具体配置-ZYNQMP Configuration 1、Linux Compoment Selection Linux Compoment Selection&#xff0c;Linux组件选择. First Stage Bootloader和Auto update ps_init勾选会自动生成fsbl.elf&#xff0c;自动更新ps_init。 PMU Firmware平台管理单元固…

熵与信息论

经典信息论的核心概念是香农熵。假设我们得到了一个变量X的值&#xff0c;X的香农熵量化了我们在获悉 X的值时所能得到的平均信息量&#xff1b;另一种观点是将X的看作在我们获悉的值前对其不确定程度的度量。这两种观点是互补的&#xff1b;我们既可以将看作在我们获悉X的值前…

Ubuntu 22.04系统启动时自动运行ROS2节点

在 Ubuntu 启动时自动运行 ROS2 节点的方法 环境&#xff1a;Ubuntu 系统&#xff0c;ROS2 Humble&#xff0c;使用系统自带的 启动应用程序 目标&#xff1a;在系统启动时自动运行指定的 ROS2 节点 效果展示 系统启动后&#xff0c;自动运行小乌龟节点和键盘控制节点。 实践…

龙蟠科技业绩压力显著:资产负债率持续攀升,产能利用率也不乐观

《港湾商业观察》施子夫 黄懿 去年十月至今两度递表后&#xff0c;10月17日&#xff0c;江苏龙蟠科技股份有限公司(以下简称&#xff0c;龙蟠科技&#xff1b;603906.SH&#xff0c;02465.HK)通过港交所主板上市聆讯。 很快&#xff0c;龙蟠科技发布公告称&#xff0c;公司全…

OceanBase 安全体系解析之身份鉴别

本文作者&#xff1a;金长龙爱可生测试工程师&#xff0c;负责 DMP 产品的测试工作。 本文以MySQL为参照&#xff0c;详细阐述了OceanBase 在MySQL模式下的安全体系中&#xff0c;身份鉴别的能力&#xff0c;涵盖了身份鉴别机制、用户名的构成规则、密码的复杂度&#xff0c;以…

在Java中的动态绑定和静态绑定

动态绑定和静态绑定是两种方法调用的绑定机制静态绑定 静态绑定也称为早期绑定&#xff0c;是在编译时确定调用的方法。动态绑定 动态绑定也称为晚期绑定&#xff0c;是在运行时确定调用的方法。静态绑定用于编译时确定的方法调用&#xff0c;动态绑定是Java实现运行时多态的…

CISE|暴雨受邀出席第二十六届中国国际软件博览会

10月24日至26日&#xff0c;备受瞩目的第二十六届中国国际软件博览会&#xff08;简称CISE&#xff09;在国家会展中心&#xff08;天津&#xff09;圆满举办。CISE不仅汇聚了来自全国各地的顶尖软件企业和机构&#xff0c;还吸引了众多专家学者和行业精英共襄盛举&#xff0c;…

Cesium基础-(Entity)-(Box)

** 里边包含Vue、React框架代码详细步骤、以及代码详细解释 ** 3、Box 盒子 以下是 BoxGeometry 类的属性、方法和静态方法,以表格形式展示: 属性 属性名类型默认值描述minimumCartesian3盒子的最小 x, y, 和 z 坐标。maximumCartesian3盒子的最大 x, y, 和 z 坐标。vertex…