注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
LitchiCheng的个人空间 https://home.eeworld.com.cn/space-uid-1003127.html [收藏] [复制] [分享] [RSS]
日志

rv1106开发板上使用yolov5转换rknn模型进行图像识别的推理实测

已有 328 次阅读2024-1-23 23:04 |个人分类:rv1106

   注意事项:镜像使用buildroot版本,ubuntu的版本依赖不全,交叉工具链使用的是uClibC版本,所以直接编译后是不能运行在Ubuntu的根文件系统上的

参考官方的文档RKNN 模型推理测试 | LUCKFOX WIKI

下载对应rknpu2仓库,github下载不了的话,用gitee

git clone git@github.com:rockchip-linux/rknpu2.git
git clone git@gitee.com:zjulkw/rknpu2.git

配置TOOLCHAIN交叉工具链环境变量

export RK_RV1106_TOOLCHAIN=/home/dar/epan/rv1106/luckfox-pico/tools/linux/toolchain/arm-rockchip830-linux-uclibcgnueabihf/bin/arm-rockchip830-linux-uclibcgnueabihf

使用实例中的编译脚本

cd /home/dar/epan/rv1106/rknpu2/examples/RV1106_RV1103/rknn_yolov5_demo
chmod +x build-linux_RV1106.sh
./build-linux_RV1106.sh

编译过程  

install 目录下会生成一个 rknn_yolov5_demo_Linux 目录,将整个目录复制到luckfox板子中

scp -r rknn_yolov5_demo_Linux/ root@172.32.0.93:~

 

切换到luckfox板子上,导入第三方库的路径

export LD_LIBRARY_PATH=/root/rknn_yolov5_demo_Linux/lib

运行如下执行进行推理,使用转换后的rknn模型,图片为bus.jpg

# ./rknn_yolov5_demo model/RV1106/yolov5s-640-640.rknn model/bus.jpg
rknn_api/rknnrt version: 1.4.1b9 (09eb4be80@2022-10-19T09:51:39), driver version: 0.8.2
model input num: 1, output num: 3
input tensors:
  index=0, name=images, n_dims=4, dims=[1, 640, 640, 3], n_elems=1228800, size=1228800, fmt=NHWC, type=INT8, qnt_type=AFFINE, zp=-128, scale=0.003922
output tensors:
  index=0, name=output, n_dims=4, dims=[1, 80, 80, 255], n_elems=1632000, size=1632000, fmt=NHWC, type=INT8, qnt_type=AFFINE, zp=-128, scale=0.003860
  index=1, name=283, n_dims=4, dims=[1, 40, 40, 255], n_elems=408000, size=408000, fmt=NHWC, type=INT8, qnt_type=AFFINE, zp=-128, scale=0.003922
  index=2, name=285, n_dims=4, dims=[1, 20, 20, 255], n_elems=102000, size=102000, fmt=NHWC, type=INT8, qnt_type=AFFINE, zp=-128, scale=0.003915
custom string:
Begin perf ...
   0: Elapse Time = 79.84ms, FPS = 12.52
model is NHWC input fmt
loadLabelName ./model/coco_80_labels_list.txt
person @ (208 244 286 506) 0.884136
person @ (479 238 560 526) 0.863766
person @ (110 236 230 535) 0.832498
bus @ (94 130 553 464) 0.697389
person @ (79 354 122 516) 0.349307

可以看到成功运行,且已经输出推理结果,接下来进行标记,下载官方的mark工具(javascript:;),将如下识别结果输入到data.txt,再把bus.jpg放到该目录下

person @ (208 244 286 506) 0.884136
person @ (479 238 560 526) 0.863766
person @ (110 236 230 535) 0.832498
bus @ (94 130 553 464) 0.697389
person @ (79 354 122 516) 0.349307

python3 mark.py bus.jpg,会生成标记后的bus_output.jpg

dar@dar:~/epan/rv1106/mark$ ll
total 2096
drwxrwxrwx 1 dar dar   4096 Jan 23 21:22 ./
drwxrwxrwx 1 dar dar   4096 Jan 23 21:22 ../
-rwxrwxrwx 1 dar dar 168060 Jan 23 20:41 Roboto-Black.ttf*
-rwxrwxrwx 1 dar dar 181374 Jan 23 20:45 bus.jpg*
-rwxrwxrwx 1 dar dar    180 Jan 23 20:41 data.txt*
-rwxrwxrwx 1 dar dar 621153 Jan 23 20:41 fruits.jpg*
-rwxrwxrwx 1 dar dar 836909 Jan 23 20:41 laptop.jpg*
-rwxrwxrwx 1 dar dar   1676 Jan 23 20:41 mark.py*
-rwxrwxrwx 1 dar dar 323552 Jan 23 20:41 pets.jpg*
dar@dar:~/epan/rv1106/mark$ python3 mark.py bus.jpg
dar@dar:~/epan/rv1106/mark$ ll
total 2188
drwxrwxrwx 1 dar dar   4096 Jan 23 21:24 ./
drwxrwxrwx 1 dar dar   4096 Jan 23 21:22 ../
-rwxrwxrwx 1 dar dar 168060 Jan 23 20:41 Roboto-Black.ttf*
-rwxrwxrwx 1 dar dar 181374 Jan 23 20:45 bus.jpg*
-rwxrwxrwx 1 dar dar  93597 Jan 23 21:24 bus_output.jpg*
-rwxrwxrwx 1 dar dar    180 Jan 23 20:41 data.txt*
-rwxrwxrwx 1 dar dar 621153 Jan 23 20:41 fruits.jpg*
-rwxrwxrwx 1 dar dar 836909 Jan 23 20:41 laptop.jpg*
-rwxrwxrwx 1 dar dar   1676 Jan 23 20:41 mark.py*
-rwxrwxrwx 1 dar dar 323552 Jan 23 20:41 pets.jpg*

原图

 

标记后的

 

视频分享


 

本文来自论坛,点击查看完整帖子内容。

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章