欢迎光临散文网 会员登陆 & 注册

RK3588环境配置过程全记录 step 1

2023-02-19 15:04 作者:张起灵GR  | 我要投稿

@[TOC](本文记录了本人在配置RK3588 的PC环境时遇到的所有坑)

引言

最近在做毕设,由于是第一次接触NPU,所以踩了不少坑,顺便将它记录下来,防止后来者继续踩(doge)hh。
许多人都和我一样,刚到手拿到一块NPU算力版的时候都不知道从何下手,是先在PC端操作呢还是直接在板子上操作?

本人虽然熟悉一些类似于STM32 ,esp等板子,但是也是第一次接触NPU
在经过我的踩坑和学习之后,大概总结出了这么一套流程:

  1. 先在PC端按照官方出的教程打包板子需要的系统,我打包的是Ubuntu系统

  2. 继续在PC端操作,主要是对于RKNN-Toolkit2环境的配置

  3. 在PC端跑一些demo,并将一些模型转化为RKNN模型

  4. 最后部署到板子

第一步:安装Ubuntu系统:

在这一步中,有些板子是Ubuntu20.04,有些是18.04,我的建议是官方教程是什么版本就安装什么版本,避免不需要的麻烦:

  1. VM 和Ubuntu下载:
    Ubuntu20.04 :Ubuntu20.04清华源
    VM 17pro  :VM 17pro

  2. VMware虚拟机安装Ubuntu20.04详细图文教程

在安装好Ubuntu系统之后就是最烦人的步骤:配置环境了

经过本人亲测:Ubuntu20.04自带的python3.8配置环境是失败的,不知道大家是否有配置成功的(我反正是配了一天没配好)
在RKNN Toolkit2中 有cp36和cp38的requirements文件,cp38的到后面总是报错,但ubuntu20.04中又有一些之前build好的文件,所以我们在Ubuntu上装一个python3.6,并将其设为默认python版本,这样就不会有版本冲突的问题啦!
上操作:

sudo apt update
sudo apt install software-properties-common
sudo apt install python3.36-dev
sudo apt install python3.6-tk

然后再使用这篇博客中提到的方法,就成功将默认python版本改为3.6了

Ubuntu更换python版本的方法

第二步:安装并创建Virtuelenv环境管理python版本

Virtualenv 的安装:

sudo apt-get install virtualenv

Virtuelenv的使用

  1. 创建管理目录、

mkdir ~/Virtualenv

  1. 创建环境
    每次创建环境前,先cd到该目录下,这样创建的虚拟环境就存放在该目录中了

cd Virtualenv
virtualenv -p /usr/bin/python3.6 venv
##“/usr/bin/python3.6”即python3.6的安装路径,venv为环境名称

  1. 激活环境
    假如我要激活nenv环境:

source venv/bin/activate

  1. 退出环境
    输入

deactivate

  1. 删除环境
    如果某个环境不想要了,想删除环境,那么直接在Virtualenv目录下执行命令:

rm -r 环境名
#类似于 rm -r venv

第三步:安装python环境:

首先我们需要下载官方的sdk文件:FireFly下载
在其中找到对应的:


点击下载,注意,只需要下载RKNN_SDK_V1.3.0
下载好后放在Ubuntu系统的根目录
安装对应的依赖:


pip3 install -r ../RK_NPU_SDK_1.3.0/rknn-toolkit2-1.3.0/doc/requirements_cp36-1.3.0.txt
# 注意自己存放的路径

在这里可能会出现pip安装速度慢或者一直超时不安装的情况:

我们只需要更换pip源就可以了,这里介绍一种简单的操作:

在 pip命令后自己设定收集源(-i +url),例如使用豆瓣源

pip3 install pqi -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

在pqi安装好之后,我们可以输入:

pqi ls

然后你就可以选择其中一个源了

pqi use douban

然后继续输入:

pip3 install -r ../RK_NPU_SDK_1.3.0/rknn-toolkit2-1.3.0/doc/requirements_cp36-1.3.0.txt

在安装过程中可能依旧会有报错:

我们只需要:


pip install numpy==1.16.6


当出现:


说明我们已经将环境安装好了
接下来我们继续安装RKNN-Toolkit2


第四步:安装RKNNToolkit2

pip install ../RK_NPU_SDK_1.3.0/rknn-toolkit2-1.3.0/packages/rknn_toolkit2-1.3.0_11912b58-cp36-cp36m-linux_x86_64.whlLooking in indexes: http://pypi.douban.com/simple/

![在这里插入图片描述](https://img-blog.csdnimg.cn/ad0acf6086784ef08094db3a536a8ffc.png

如果上面的以来都安装好了,这个环节一般都不会出错;
为了以防万余,我们来测试一下:

python3
from rknn.apt import RKNN

如果没有任何报错信息,那就说明我们安装成功了

在PC端运行Demo

首先,cd到yolov5 的目录下:

cd ../RK_NPU_SDK_1.3.0/rknn-toolkit2-1.3.0/examples/onnx/yolov5

直接运行:

python3 test.py


我们可以看到程序中包括创建RKNN对象,模型配置;加载 onnx 模型;构建 RKNN 模型;导出 RKNN 模型;加载图片并推理,得到推理结果;释放 RKNN 对象。


转 换 后 的 模 型 默 认 保 存 路 径 为**/rknn-toolkit2-1.x.x/examples/onnx/yolov5/yolov5s.rknn **,推 理 的 图 片 结 果 保 存 在/rknn-toolkit2-1.x.x/examples/onnx/yolov5/result.jpg

未完待续……………………

coding:Deepsort部署在RK3588平台


RK3588环境配置过程全记录 step 1的评论 (共 条)

分享到微博请遵守国家法律