RK3588环境部署教程

文章目录

  • RK3588环境部署教程
    • 一、下载部署环境相关文件
    • 二、RK3588主板部署环境
    • 三、测试
    • 四、PC端部署RKNN环境
    • 五、解决遇到的问题

RK3588环境部署教程

一、下载部署环境相关文件

  • rknn-toolkit2
    在这里插入图片描述
  • Miniconda3
    在这里插入图片描述
  • ubuntu-18.04.6-desktop-amd64.iso
    在这里插入图片描述
  • rknpu2 [暂时可以不下载,后期需要在下载]

二、RK3588主板部署环境

1.安装Miniconda3,将下载的Miniconda3拷贝近主板,输入命令安装

bash Miniconda3-latest-Linux-x86_64.sh

途中需要输入回车、q以及yes即可,安装完成后打开终端,会出现(base)即安装成功。

在这里插入图片描述
2、创建虚拟环境

# 创建虚拟环境
conda create -n rknn python=3.8# 查看python3.8环境
python3.8 --version# 查看虚拟环境列表
conda env list

通过命令行conda activate rknn激活虚拟环境。

3、激活rknn虚拟环境并安装python3所需要的依赖

sudo apt-get install python3 python3-dev python3-pip
sudo apt-get install  zlib1g zlib1g-dev 
sudo apt-get install libxslt1-dev  libglib2.0-0 libsm6 libgl1-mesa-glx libprotobuf-dev gcc

4、安装python所需要的库,进入rknn–toolkit2文件的doc文件下

pip3 install -r requirements_cp38-1.5.0.txt -i https://mirror.baidu.com/pypi/simple

在这里插入图片描述
如果下载太慢,可以直接下载库文件进行安装,注意这里下载aarch版本。

torch、torchvision、tensorflow

在这里插入图片描述

5、安装rknn库,进入rknn–toolkit2文件的rknn_toolkit_lite2>package,注意这个安装aarch版本

pip3 install rknn_toolkit_lite2-1.5.0-cp38-cp38-linux_aarch64.whl

安装完成后,进入python环境进行import rknnlite查看是否成功。

在这里插入图片描述

三、测试

进入rknn-toolkit2-15\rknn_toolkit_lite2\examples\inference_with_lite文件,

运行python test.py命令,对rknn模型进行推理测试,

在这里插入图片描述

四、PC端部署RKNN环境

pc端的任务是将其他类型的模型转rknn类型。

步骤和二中的一样,只不过将aarch版本修改为linux版本。

注意:linux的rknn文件在rknn-toolkit2>packages目录下。

pip3 install rknn_toolkit2-1.5.0+1fa95b5c-cp38-cp38-linux_x86_64.whl

pc端安装成功后,通过import rknn进行测试。

在这里插入图片描述

五、解决遇到的问题

1、安装完成后设置linux和win之间可以相互复制、粘贴,教程https://blog.csdn.net/ssz__/article/details/126921531

sudo apt-get autoremove open-vm-tools
sudo apt-get install open-vm-tools
sudo apt-get install open-vm-tools-desktop

2、替换python文件位置,一般环境都会有默认的3.6或2.7,如果输入python --version查看的版本不是python3.8就需要将其换至安装位置

sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 1

3、Ubuntu18.04升级GLIBC_2.29,解决ImportError: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29‘

https://blog.csdn.net/m0_37201243/article/details/123641552

https://blog.csdn.net/quantum7/article/details/128344645

4、configure: error: These critical programs are missing or too old: gawk bison
Check the INSTALL file for required versions.

参考:https://blog.csdn.net/quantum7/article/details/128344645

sudo apt install gawk
sudo apt install bison

5、These critical programs are missing or too old: gawk bison

https://blog.csdn.net/quantum7/article/details/128344645

6、AttributeError: module ‘urllib‘ has no attribute ‘urlopen‘

打开运行代码,添加request即可,import urllib.request

7、找不到api的问题

下载rknpu2,librknn_api文件夹下的几个文件通过命令移动到usr/lib和usr/bin目录下(必须使用命令行移动)

sudo mv librknn_api.so /usr/lib sudo mv librknnrt.so /usr/lib sudo mv restart_rknn.sh /usr/bin sudo mv rknn_server /usr/bin sudo mv start_rknn.sh /usr/bin 

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

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

相关文章

从矢量数据中学习:增强基于矢量的形状编码和形状分类,用于地图泛化

本文研究了利用基于矢量的编码方案。首先,增强了预处理方法,并结合基于特征的编码方案评估CNN、RNN、GCNN的性能。结果表明,特征描述符提高了三种神经网络的准确率。 ●提出一种利用形状描述和表示技术的顶点特征描述工作流,该工…

正点原子[第二期]Linux之ARM(MX6U)裸机篇学习笔记-8.2-链接脚本

前言: 本文是根据哔哩哔哩网站上“正点原子[第二期]Linux之ARM(MX6U)裸机篇”视频的学习笔记,在这里会记录下正点原子 I.MX6ULL 开发板的配套视频教程所作的实验和学习笔记内容。本文大量引用了正点原子教学视频和链接中的内容。…

Scikit-Learn回归树

Scikit-Learn回归树 1、决策树1.1、什么是决策树1.2、决策树学习的步骤1.3、决策树算法 1、决策树 决策树(DTs)是一种用于回归和分类的有监督学习方法。通常,决策树用于分类问题;当决策树用于回归问题时,称为回归树。回…

【Leetcode每日一题】 分治 - 排序数组(难度⭐⭐)(69)

1. 题目解析 题目链接:912. 排序数组 这个问题的理解其实相当简单,只需看一下示例,基本就能明白其含义了。 2.算法原理 归并排序(Merge Sort)是一种采用“分而治之”(Divide and Conquer)策略…

C语言【动态内存】

1.为什么要有动态内存 我们现在掌握的内存开辟方法有: int val 20;//在栈空间开辟4个字节 char str[10]{0};//在栈空间开辟10个字节的连续的空间但是上述的方式有两个点要注意: 1.空间开辟的大小是固定的 2.数组在申明的时候,一定要指定数…

【Qt】error LNK2001: 无法解析的外部符号

参考:Qt/VS LNK2019/LNK2001:无法解析的外部符号_qt lnk2001无法解析的外部符号-CSDN博客 微软官方报错文档-链接器工具错误 LNK2019 __declspec error LNK2001: 无法解析的外部符号 "__declspec(dllimport) 原因 以这种为前缀的基本上跟库相关…

JAVA前端快速入门基础_javascript入门(03)

写在前面:本文用于快速学会简易的JS,仅做扫盲和参考作用 本章节主要介绍JS的事件监听 1.什么是事件监听 事件:是指发生在HTML端的事件,主要指以下几种。 1.按钮被点击 2.鼠标移动到元素上 3.按到了键盘 事件监听:当触发了事件时,JS会执行相…

用HTML5实现播放gif文件

用HTML5实现播放gif文件 在HTML5中&#xff0c;你可以使用<img>标签来播放GIF文件。GIF文件本质上是一种图像格式&#xff0c;它支持动画效果&#xff0c;因此当在网页上加载时&#xff0c;它会自动播放动画。先看一个简单的示例&#xff1a; <!DOCTYPE html> &l…

ubuntu下anaconda虚拟环境开机自启动

&#xff08;1&#xff09; 要在Ubuntu系统中使Anaconda环境下的Python脚本在开机时自启动&#xff0c;可以通过创建一个systemd服务单元来实现。以下是步骤和示例代码&#xff1a; 创建一个新的systemd服务文件。 打开文本编辑器&#xff0c;创建一个新的服务文件。例如&…

网络基础(1)网络编程套接字UDP

要完成网络编程首先要理解原IP和目的IP&#xff0c;这在上一节已经说明了。 也就是一台主机要进行通信必须要具有原IP和目的IP地址。 端口号 首先要知道进行网络通信的目的是要将信息从A主机送到B主机吗&#xff1f; 很显然不仅仅是。 例如唐僧要去到西天取真经&#xff0…

2024华东杯B题完整思路代码论文分析:建立车辆转向与几何约束优化模型

2024华东杯数学建模邀请赛B题&#xff1a;建立车辆转向与几何约束优化模型 完整论文和代码下载&#xff1a;↓↓↓ https://www.yuque.com/u42168770/qv6z0d/bnnv13hz319fokwe 本文文章较长&#xff0c;建议先目录。经过不懈的奋战&#xff0c;目前我们已经完成了2024华东杯数…

一个类实现Mybatis的SQL热更新

引言 平时用SpringBootMybatis开发项目&#xff0c;如果项目比较大启动时间很长的话&#xff0c;每次修改Mybatis在Xml中的SQL就需要重启一次。假设项目重启一次需要5分钟&#xff0c;那修改10次SQL就过去了一个小时&#xff0c;成本有点太高了。关键是每次修改完代码之后再重…