6.算法移植第六篇 YOLOV5/rknn生成可执行文件部署在RK3568上
接上一篇文章best-sim.rknn模型生成好后,我们要将其转换成可执行文件运行在RK3568上,这一步需要在rknpu上进行,在强调一遍!!rknpu的作用是可以直接生成在开发板上运行的程序
退出上一步的docker环境
exit
1.复制best-sim.rknn
复制到这个下面将其重命名为yolov5s-640-640.rknn
~/rknpu2-1.4.0/examples/rknn_yolov5_demo/model/RK356X/yolov5s-640-640.rknn
cp ~/rknn/rknn-toolkit2-1.4.0/examples/onnx/yolov5/best-sim.rknn ~/rknpu2-1.4.0/examples/rknn_yolov5_demo/model/RK356X/yolov5s-640-640.rknn
2.安装编译器
sudo apt-get install gcc g++ cmake
3.安装交叉编译链
交叉编译64位ARM架构的程序。
sudo apt install gcc-aarch64-linux-gnu g++-aarch64-linux-gnu
4.修改 postprocess.h文件
进入到该目录下
cd rknpu2-1.4.0/examples/rknn_yolov5_demo/include
ls
修改为自己识别的CLASS_NUM,我识别种类只有一个就是车,和data.yaml中的类别数相同,因此为1
5.拷贝测试图片02.jpg
首先进入该目录
cd ~/rknpu2-1.4.0/examples/rknn_yolov5_demo/model/
拷贝图片
sudo cp ~/rknn/rknn-toolkit2-1.4.0/examples/onnx/yolov5/02.jpg 02.jpg
对 coco_80_labels_list.txt进行备份
cp coco_80_labels_list.txt coco_80_labels_list_.txt
6.修改 coco_80_labels_list.txt文件
打开该文件并将里面的内容修改为自己的类别,我的是car
vim vim coco_80_labels_list.txt
7.运行 ./build-linux_RK356X.sh
进入该目录下
cd ~/rknpu2-1.4.0/examples/rknn_yolov5_demo
运行后出现上述错误,该错误表示上传的照片没有用户权限运行以下命令
cd model
sudo chmod 777 02.jpg
cd ..
./build-linux_RK356X.sh
运行成功后
最后生成的文件存放在Install文件夹中,这个文件夹是需要我们往开发板上复制的文件夹。
8.生成install压缩文件
zip -r install.zip install/
上传install.zp
sz install.zip