0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

迅为RK3588在 Linux 系统中使用 NPU

北京迅为电子 2023-09-08 14:14 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

下载 rknpu2 并拷贝到虚拟机 Ubuntu,RKNPU2 提供了访问 rk3588 芯片 NPU的高级接口

下载地址为“iTOP-3588 开发板\02_【iTOP-RK3588 开发板】开发资料\12_NPU 使用配套资料\01_rknpu2 工具” 对于 RK3588 来说,Linux 平台 RKNN SDK 库文件为 librknnrt.so, RK3588 平台 RKNN SDK 包含了 API 使用示例程序、NPU 运行库、服务程序、文档。

wKgaomT6u5CAFC4LAADqbmq-Z90293.png

服务程序称为 rknn_server,是在开发板上常驻的服务进程,用于连板推理。在 RKNN SDK 中提供了 Linux 平台的 MobileNet 图像分类、SSD 目标检测、YOLOv5 目标检测示例。这些Demo 能够为客户基于 RKNN SDK 开发自己的 AI 应用提供参考。

在 rknpu2/examples 中还有很多其他例子,下面以 rknpu2/examples 下的 rknn_yolov5_demo 在 RK3588 Linux 64 位平台(buildroot 系统)上运行为例,来讲解如何快速上手运行。整体思路分为三步:

1 在虚拟机Ubuntu20.04上交叉编译 demo程序 rknn_yolov5_demo(demo已经默认是rknn, 无需进行模型转换)

2 部署到 iTOP-RK3588 开发板

3 在开发板上运行 demo

设置交叉编译器

1 安装 gcc 交叉编译器,编译器下载地址是网盘资料“iTOP-3588 开发板\02_【

iTOP-RK3588 开发板】开发资料\12_NPU 使用配套资料\03_编译所需工具\Linux”。

拷贝 gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu.tar.gz 到 Ubuntu 的/opt/tool_chain 目录下,这里拷贝的路径要和作者保持一致,后面要用到交叉编译器的绝对路径。

2 解压交叉编译器压缩包

tar -vxf gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu.tar.gz 解压完成后备用!

修改编译工具路径

1 因为此章节以 rknn_yolov5_demo 在 RK3588 Linux 64 位平台上运行为例,所以修改

examples/rknn_yolov5_demo/build-XXX.sh 的编译工具路径,

2 修改 build-linux_RK3588.sh 文件,将 TOOL_CHAIN 修改为

gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu 的解压路径并保存修改文件,

TOOL_CHAIN=/opt/tool_chain/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu

GCC_COMPILER=$TOOL_CHAIN/bin/aarch64-none-linux-gnu

更新 RKNN 模型

RKNN 是 Rockchip NPU 平台(也就是开发板)使用的模型类型,是以.rknn 结尾的模型文件。

RKNN SDK 提 供 的 demo 程 序 中 默 认 自 带 了 RKNN 模 型 , 在 RKNN SDK 的

examples/rknn_yolov5_demo/model/RK3588/目录下,

如使用自己的模型需要转换成 rknn 模型,转换方法可以参考第 5 章节。

在得到 RKNN 模型之后,demo 程序使用 C 接口在 RK3588 平台开发应用,

3.1.4 编译 demo

1 在终端命令窗口进入 rknn_yolov5_demo 文件夹,输入以下命令:

cd examples/rknn_yolov5_demo/

2 运行 build-linux_RK3588.sh 脚本编译程序

./build-linux_RK3588.sh

3 编译完成之后,编译好的程序一般放在 install 目录

4 网 盘 中 也 提 供 了 编 译 好 的 Demo , 可 以 在 网 盘 资 料 资 料 “iTOP-3588 开 发 板 \02_ 【iTOP-RK3588 开发板】开发资料\12_NPU 使用配套资料\02_NPU demo\Linux”下载。

开发板运行 demo

1 通过 U 盘拷贝 RKNPU2 工具中的 runtime/RK3588/Linux/librknn_api/aarch64/目录下的文件到开发板的/usr/lib 目录下。

2 把编译好的程序 rknn_yolov5_demo_Linux 通过 U 盘拷贝到开发板的根目录上,开发板上要 烧写 linux 系统(buildroot)。

3 设置库文件的路径,输入以下命令:

export LD_LIBRARY_PATH=./lib

4 进入程序所在的目录,输入以下命令:

cd /rknn_yolov5_demo_Linux

5 运行程序来识别相应的图片中物体,输入以下命令:

./rknn_yolov5_demo ./model/RK3588/yolov5s-640-640.rknn ./model/bus.jpg

6 运行完生成结果图片 out.jpg,

7 拷贝生成的 out.jpg 到 U 盘中,

8 在 windows 下查看 out.jpg,

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    462

    文章

    53535

    浏览量

    459138
  • Linux
    +关注

    关注

    88

    文章

    11628

    浏览量

    217980
  • NPU
    NPU
    +关注

    关注

    2

    文章

    358

    浏览量

    20840
  • RK3568
    +关注

    关注

    5

    文章

    628

    浏览量

    7584
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    RK3588开发板Android系统烧写及注意事项

    RK3588开发板Android系统烧写及注意事项
    的头像 发表于 12-03 15:17 5239次阅读
    <b class='flag-5'>迅</b><b class='flag-5'>为</b><b class='flag-5'>RK3588</b>开发板Android<b class='flag-5'>系统</b>烧写及注意事项

    RK3588开发环境搭建“三步曲”,从零到一轻松上手!

    RK3588开发环境搭建“三步曲”,从零到一轻松上手!
    的头像 发表于 12-01 11:51 509次阅读
    <b class='flag-5'>迅</b><b class='flag-5'>为</b><b class='flag-5'>RK3588</b>开发环境搭建“三步曲”,从零到一轻松上手!

    实战RK3568性能调优:如何利用资料压榨NPU潜能-Android系统中使NPU

    《实战RK3568性能调优:如何利用资料压榨NPU潜能-Android系统
    的头像 发表于 11-07 13:42 222次阅读
    实战<b class='flag-5'>RK</b>3568性能调优:如何利用<b class='flag-5'>迅</b><b class='flag-5'>为</b>资料压榨<b class='flag-5'>NPU</b>潜能-<b class='flag-5'>在</b>Android<b class='flag-5'>系统</b><b class='flag-5'>中使</b>用<b class='flag-5'>NPU</b>

    RK3588开发板Linux安卓麒麟瑞芯微国产工业AI人工智能

    RK3588开发板Linux安卓麒麟瑞芯微国产工业AI人工智能
    发表于 07-14 11:23

    iTOP-RK3588S开发板/核心板瑞芯微RK3588S处理器6TOPS算力内置NPU

    输出、PCle2.0、USB3.0、USB2.0. RS485、TypeC、SARADC等接口一应俱全。 系统支持 我们已经RK3588上开发了稳定又好用的Android13、Debian. Buildroot、Ubuntu等
    发表于 04-10 11:13

    北京RK3588平台成功适配“望获”国产OS

    北京RK3588平台成功适配“望获”国产OS
    的头像 发表于 04-09 15:35 849次阅读
    北京<b class='flag-5'>迅</b><b class='flag-5'>为</b><b class='flag-5'>RK3588</b>平台成功适配“望获”国产OS

    RK3588 vs RK3576开发板旗舰与次旗舰的终极对决

    RK3588 vs RK3576开发板旗舰与次旗舰的终极对决
    的头像 发表于 03-24 14:09 1584次阅读
    <b class='flag-5'>迅</b><b class='flag-5'>为</b><b class='flag-5'>RK3588</b> vs <b class='flag-5'>RK</b>3576开发板旗舰与次旗舰的终极对决

    RK3588 EVB开发板原理图讲解【八】 RK3588 power Tree

    DGIOG可能为数字接口供电,并集成RC滤波网络 ​一、整体架构概览核心目标:RK3588芯片不同功能单元(CPU/GPU/NPU)提供精准供电 四大模块: ​RK860-2
    发表于 03-01 11:38

    分享 |基于RK3588开发板部署测试DeepSeek模型

    分享 |基于RK3588开发板部署测试DeepSeek模型
    的头像 发表于 02-18 14:26 2074次阅读
    分享 |<b class='flag-5'>迅</b><b class='flag-5'>为</b>基于<b class='flag-5'>RK3588</b>开发板部署测试DeepSeek模型

    RK3588S开发板/核心板介绍

    输出、PCle2.0、USB3.0、USB2.0. RS485、TypeC、SARADC等接口一应俱全。 系统支持 我们已经RK3588上开发了稳定又好用的Android13、Debian. Buildroot、Ubuntu等
    发表于 02-13 14:40

    RK3588开发板实时系统编译-Preemption系统/ Xenomai系统编译-实时系统烧写-固件获取方式

    烧写的镜像可以根据第 3 章自行编译,也可以直接烧写提供好的镜像。为了方便大家使用,提供了实时系统 buildroot 的镜像,可以
    发表于 02-11 14:50

    RK3588开发板实时系统编译-Preemption系统/ Xenomai系统编译-选择摄像头配置

    上的接口如下所示。如果想要单独使用哪个接口开启对应的宏定义即可,注意只能单独使能单个摄像头。如果想要使用多个摄像头,请参考《【北京】itop-3588开发板摄像头使用手册》。 更多内容可以关注
    发表于 01-18 10:15

    RK3588开发板实时系统编译-Preemption系统/ Xenomai系统编译-设置屏幕配置

    的CONFIG_TOUCHSCREEN_GT9XX宏定义使能,然后再编译源码。 更多内容可以关注RK3588开发板-【北京】itop
    发表于 01-14 16:19

    RK3588开发板实时系统编译-Preemption系统/ Xenomai系统编译-获取Linux源码包

    rk3588_linux_XXXXXXX.tar.gz(XX...为名称的简写)”解压压缩包。 解压后会生成一个 rk3588_linux 文件夹,如下图所示 更多内容可以关注
    发表于 01-09 11:03

    RK35883588S开发板/核心板选型硬件的区别

    1路HDMI_TX、1路千兆以太网、3路MIPI 摄像头接口、2路USB2.0等,虽然也支持多种接口,但相对来说,它的接口类型更加传统和经典。 RK3588S开发板: 大家选择
    发表于 12-20 15:40