赞
踩
《Rockchip_RKNPU_User_Guide_RKNN_API_*.pdf》
《Rockchip_User_Guide_RKNN_Toolkit2_*.pdf》
知识点学习---------------------------------------------
1:rk3588内置6Tops的NPU,若要使用需要下载rknn sdk;
2:用户可以通过rknn sdk将算法模型转化为.rknn为后缀的模型文件;
1:首先下载 Index of /
拷贝至ubuntu
bash Anaconda3-2022.10-Linux-x86_64.sh
在安装目录下可以使用conda list查看
vim ~/.bashrv
写入 export PATH="/home/warren/anaconda3/bin:$PATH":
source ~/.bashrv
查看版本 conda --version
cnda env list 查看已创建的环境
conda list 查看已安装的包
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
# 搜索时显示通道地址
conda config --set show_channel_urls yes
conda info 查看源
均在pc端虚拟机运行
ubuntu18.04
准备好RK_NPU_SDK_1.3.0
1:首先ubuntu安装docker
export DOWNLOAD_URL="https://mirrors.tuna.tsinghua.edu.cn/docker-ce"
wget -O- https://get.docker.com/ | sh
若安装过docker,先删除
sudo apt-get remove docker docker-engine docker.io containerd runc
安装依赖项
sudo apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common
信任docker的GPG公钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
添加软件仓库
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
安装
sudo apt-get update
sudo apt-get install docker-ce
2:进入rknn-toolkit2-1.3.0的docker文件夹
cd /home/warren/RK_NPU_SDK_1.3.0/rknn-toolkit2-1.3.0/docker
ls
加载镜像
docker load --input rknn-toolkit2-1.3.0-cp36-docker.tar.gz
加载完成后查看当前所有docker镜像
sudo docker images
运行docker容器,其中蓝色字体为你的example里的文件,红色为进入环境后名称,可以任取,紫色为toolkit版本号
sudo docker run -t -i --privileged -v /dev/bus/usb:/dev/bus/usb -v /home/warren/RK_NPU_SDK_1.3.0/rknn-toolkit2-1.3.0/examples/onnx/yolov5:/rknn_yolo5_demo rknn-toolkit2:1.3.0-cp36 /bin/bash
进入后可以看到创建的文件
在运行之前我们先改一下test.py的代码,在最后加一句
cv2.imwrite(“result.jpg”,img_1)
这样可以直接导出结果图片
python3 ./testpy
运行完成后可以看到生成了rknn模型文件以及result.jpg文件
至此rknn-toolkit2安装完成
准备一根typec线连接板子和pc
ubuntu确认下载了adb,如果没有--sudo apt-get install adb
确认板子连到了虚拟机,如果红色框为灰色则表示未连接到虚拟机,可以点击一下连接到虚拟机
打开终端
adb dedvices,可以看到设备的id,表示连接成功
此时,因为我们的编译是要到容器内进行的,但adb只能在一处使用,所以需要线kill掉adb
adb kill-sever
再次进入容器
sudo docker run -t -i --privileged -v /dev/bus/usb:/dev/bus/usb -v /home/warren/RK_NPU_SDK_1.3.0/rknn-toolkit2-1.3.0/examples/onnx/yolov5:/rknn_yolo5_demo rknn-toolkit2:1.3.0-cp36 /bin/bash
此时,我们仍然需要更改test.py的代码
注意红色部分,其中9249b8a0b4e08c45是之前adb devices查看的id号
保存 运行python3 ./test.py
运行成功
1:下载交叉编译工具
git clone https://gitlab.com/firefly-linux/prebuilts/gcc/linux-x86/aarch64/gcc-buildroot-9.3.0-2020.03-x86_64_aarch64-rockchip-linux-gnu.git
2:打开~/RK_NPU_SDK_1.3.0/rknpu2_1.3.0/examples/rknn_yolov5_demo
vim build-linux_RK3588.sh添加交叉编译器的目录
./build-linux_RK3588.sh
至此编译完成;下面我们把之前转换好的rknn模型文件放到
~/RK_NPU_SDK_1.3.0/rknpu2_1.3.0/examples/rknn_yolov5_demo/model/RK3588下
回到之前目录继续./build-linux_RK3588.sh
接下来~/RK_NPU_SDK_1.3.0/rknpu2_1.3.0/examples/rknn_yolov5_demo/install目录下
把rknn_yolov5_demo_Linux拷贝到板端,新建data目录保存
./rknn_yolov5_demo ./model/RK3588/yolov5s.rknn ./model/bus.jpg
查看
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。