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

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

3天内不再提示

Orange Pi 5 Plus实测:RK3588 NPU执行AI应用的效能如何?

香橙派 2023-12-21 17:58 次阅读

OPi 5Plus的SoC为Rockchip RK3588八核(4个Cortex-A76+4个Cortex-A55)架构的64位处理器,主频达 2.4GHz并带有Mali-G610 GPU,除此之外的亮点还包括了一个 6 TOPS算力的NPU,支持TensorFlow、PyTorch等常见框架转换,使其能够作为处理AI影像的边缘装置。开发板上的周边也相当丰富,包含2 Ports 2.5Gb Ethernet、3 Ports HDMI (2out + 1in)、5 Ports USB、M.2 E-Key等高速接口硬件数据看来相较树莓派而言可说是全面性的碾压,那么实际使用如何,一起往下看看!

wKgZomWEC_yAQFbhAAwg6ou3CQM235.png

怎么玩?

OPi 5 Plus支持多种操作系统,包含 Ubuntu、Debian、Android与官方自研的 Orange Pi OS等, 各位可以自行挑选喜欢的image映像下载后烧录到SD Card启动。笔者这里选择兼容性较好的Ubuntu,同时得利于Open Source的优势,安装的是非官方的Ubuntu 22.04社群版本。烧录完SD Card放入OPi 5 Plus再接上荧幕键盘网络线等,上电后后经过初始化设定即可以看到GNOME的桌面界面以及那只可爱的幸运水母。

就如同树莓派一样,当操作系统安装完成后就能够当作一般个人计算机使用,或是作为多媒体应用,甚至是搭载到移动载具上都行。由于使用的是 Ubuntu系统,软件套件支持性也相当丰富。笔者实际使用 Chromium浏览器开启YouTube 4K串流进行测试,顺畅度可以说是明显比树莓派好上许多,也没有任何影格丢失(frame drop)的现象!

神经网络运算单元 NPU

凭借着 RK3588处理器的强大效能,若使用OPi 5 Plus只是做 CPU运算就稍微可惜了,笔者本篇的最主要目的就是要体验Rockchip的NPU执行AI应用的效能如何。官方在 github上有提供对应RK3588 NPU的Library与范例程序rknpu2, 可以直接在OPi 5 Plus安装并呼叫 NPU执行,以下记录安装过程供各位参考。由于范例程序为C++语言需要进行编译,先执行系统更新并安装必要套件:

wKgaomWEC_aAW-LzAAAPs3xup5Y870.png

从 GitHub下载Repo:

wKgaomWEC_aAJYgXAAANG1xRzFM562.png

范例程序包含 API的使用与mobilenet及YOLOv5,选择YOLOv5范例进行编译:

wKgZomWEC_aAWKpxAAAPz1shSFs445.png

执行范例,带入官方预训练的 YOLOv5模型档 “yolov5s-640-640.rknn” 与推论图片 “bus.jpg”:

wKgZomWEC_aAX6DeAAAScJKovbI314.png

完成后会产生输出档案 “out.jpg”,开启后看到如下图示,主要物件接有被侦测并标记出来:

wKgaomWEC_uAWqcuAAKBJSMQJXg431.png

(OPi5Plus执行 YOLOv5图片推论结果)

若是第一次执行系统可能没有安装 RKNN的runtime library,会出现找不到.so动态连结Library导致执行失败,可以将此档案库提供的library复制到系统路径:

wKgZomWEC_eAQfyhAAAILJL_Smw523.png

YOLOv5实时影像推论

官方的范例并没有提供从 Webcam撷取影像进行推论的范例,但大家可以参考社群上这一篇教学的内容进行实作。准备好一个 UVC Webcam插上OPi 5 Plus的 USB孔,输入指令安装openCV相依套件:

wKgaomWEC_eASA9DAAAONU2Y3EM125.png

移动到 rknpu2 YOLOv5范例的路径:

wKgaomWEC_eACXNVAAANsWaMlOA984.png

下载社群 Maker提供的CMakeList.txt并复制到此目录下;下载社群Maker提供的main.cc并复制到src目录下。再次编译程序码:

wKgZomWEC_eAa6SjAAAJZGdulOY976.png

完成后动到安装路径执行范例程序,输入下方指令执行。指令带入第三个参数 “2” 代表使用/dev/Video2的装置,“1280” 代表影像的宽度,“720” 则代表影像的高度,可以依各位实际的情况调整。

wKgaomWEC_iAewwQAAAdHAwMO8s830.pngwKgaomWEC_uAErYxAAtHmNT7Pc0937.png

实际测试的结果在 1280×720 HD影像下的推论有10 FPS,若是将分辨率改为640×480则可以达到接近20 FPS。但从log看来执行推论的过程约只耗费20ms左右,其余的时间则是耗费在影像的处理与显示上了,效能可说是相当不赖。

模型转换工具 RKNN-Toolkit2

上述的推论范例使用官方预训练的 RKNN模型档,若是想要自行将不同框架的模型转成RKNN在OPi 5 Plus上推论,就必须透过官方提供的 RKNN-Toolkit2这个工具。此工具必须要在x86的PC上执行,作业系统要求为Ubuntu 18.04以上,Python 3.6以上,笔者的测试环境为Ubuntu 22.04,Python 3.10。 第一步也是要安装必要套件:

wKgZomWEC_iAdwkUAAAw5s8eVNs812.png

建立 python虚拟环境:

wKgaomWEC_iAYmayAAATdrawFjQ277.png

下载 RKNN-toolkit2:

wKgZomWEC_iAc-j9AAAZH2pXrXk329.png

安装相依套件:

wKgaomWEC_mAIl9fAAAN77_0k7s390.png

安装 RKNN-Toolkit2 Python模块:

wKgZomWEC_mAU3Z9AAAU6aKbkVI374.png

至此套件已安装完成,在此 toolkit中也有提供一些范例来转换pytorch、TensorFlow、Caffe、ONNX等不同框架的模型,可以进入到各范例中执行模型转换,举例而言要执行TensrFlow的转换范例可以输入以下指令:

wKgZomWEC_mAQEMmAAAS-Frfx0A908.png

这个指令会把目录下的 “ssd_mobilenet_v1_coco_2017_11_17.pb”TensorFlow预训练模型转换成NPU可执行的模型 “ssd_mobilenet_v1_coco.rknn”,并且会读取目录中的 “road.bmp” 档案进行推论测试。完成后即可把RKNN模型传送到Rockchip的单板计算机上执行了。

wKgZomWEC_uACw3DAASMJTS8o_A184.png

OPi 5 Plus执行 Teachable Machine转换后的RKNN模型

除了 RKNN Toolkit2内建的范例外,笔者也成功地把Teachable Machine汇出的TF.lite模型转换为RKNN模型并且在OPi 5 Plus上执行。简易流程如下:

·在 Teachable Machine训练模型,并汇出为TF.lite未量化格式

·将TF.lite模型传送到执行RKNN-toolkit2的Ubuntu PC。路径为 “rknn-toolkit2/examples/tflite/mobilenet_v1/”

·修改 “test.py” 档案,在呼叫 “rknn.config”API增加指定traget_platfrom为”rk3588”,并修改 “rknn_load_rflite”API所指定的model名称为刚刚传入的文件名称,如下图:

wKgaomWEC_qASd6IAAG6xsXgQsI756.png

·执行 python3 test.py转换模型,笔者也同时将test.py测试推论的图档改为训练资料图档,输出结果如下图,可以明确分类出图像。

wKgaomWEC_uASPHKAAdWWjNeRzk982.png

·将 rknn档案复制起来,并传送到OPi 5 Plus

·执行OPi 5 Plus的推论测试,结果如下图,可以正确的分类图片。

wKgZomWEC_qAfHtYAAKUlKdgn5U811.png

如此一来可以轻松地将 Teachable Machine客制化训练的模型放到OPi 5 Plus上执行了!

小结——展望未来想象空间更大

整体而言,Orange Pi 5 Plus适合作为智慧机上盒、智慧显示、NVR等相关应用,具备双GbE网口与多路影像输出输入是其特色。除此之外Rockchip的产品线近期已陆续搭载了NPU,让对应的单板计算机更具备竞争力,除了 CPU核心效能本身就还不错之外,还足以处理轻度物件侦测与影像分类等AI应用。唯独在 NPU工具的使用上还是稍微卡手了一些,Python文件说明也未齐全,这将直接影响Maker玩家投入开发的意愿程度。未来若能提供更人性化、更合宜的NPU开发者工具,再加上处理器本身的优异性能,可能将对边缘运算的市场造成一股破坏性的浪潮。

(以上素材来源于Felix)

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

    关注

    0

    文章

    79

    浏览量

    19518
  • 开发板
    +关注

    关注

    25

    文章

    4435

    浏览量

    94035
  • NPU
    NPU
    +关注

    关注

    2

    文章

    210

    浏览量

    18086
  • RK3588
    +关注

    关注

    6

    文章

    237

    浏览量

    3452
收藏 人收藏

    评论

    相关推荐

    基于RK3588NPU案例分享!6T是真的强!

    RK3588 NPU简 介 作为瑞芯微新一代旗舰工业处理器,RK3588 NPU性能可谓十分强大,6TOPS设计能够实现高效的神经网络推理计算。这使得
    的头像 发表于 02-27 14:14 324次阅读
    基于<b class='flag-5'>RK3588</b>的<b class='flag-5'>NPU</b>案例分享!6T是真的强!

    Banana Pi为何选择rk3588开发与Jetson Nano引脚兼容的嵌入式产品

    应用的需求。 AI加速: RK3588集成了NPU(神经处理单元),可加速深度学习推理,使其成为处理人工智能任务的理想选择。 低功耗: 与其性能相比,RK3588具有出色的功耗表现,这
    发表于 11-02 12:30

    Orange Pi OS(OH)发布,开源鸿蒙PC端来了!

    RK3566的开发板Orange Pi 3B,一是搭载RK3588S的开发板Orange Pi
    发表于 10-26 11:32

    armsom:为何选择rk3588开发与Jetson Nano引脚兼容的嵌入式产品

    RK3588支持多种外围接口,包括多个USB 3.0端口、HDMI输出、DP输出、以太网、PCIe、mipi csi等,这意味着它可以轻松满足各种应用的需求。 AI加速: RK3588集成了
    发表于 10-18 17:35

    NPU跑起来iTOP_RK3588开发板在Linux系统中使用NPU

    下载 rknpu2 并拷贝到虚拟机 Ubuntu,如下图所示,RKNPU2 提供了访问 rk3588 芯片 NPU的高级接口。 下载地址为“iTOP-3588 开发板\\\\02_
    发表于 09-12 10:05

    迅为RK3588在 Linux 系统中使用 NPU

    迅为RK3588在 Linux 系统中使用 NPU
    的头像 发表于 09-08 14:14 1002次阅读
    迅为<b class='flag-5'>RK3588</b>在 Linux 系统中使用 <b class='flag-5'>NPU</b>

    rk3588是armv8吗?rk3588硬件资料

    rk3588是armv8吗?rk3588 硬件资料 RK3588是一款高性能处理器,是Rockchip公司推出的最新芯片。本文将详细介绍RK3588的硬件资料。 首先,我们需要了解一下
    的头像 发表于 08-21 17:32 2097次阅读

    rk3588参数详解 rk3588芯片参数

    rk3588参数详解 rk3588芯片参数 Rockchip官方已经推出了全新一代的高端芯片RK3588,作为旗舰芯片,其蕴含的高性能与先进科技引起了广泛关注。本篇文章将详细介绍RK3588
    的头像 发表于 08-21 17:16 2.5w次阅读

    RK3588系列有多少型号?

    RK3588系列有多少型号? RK3588是瑞芯微推出的一款长线产品,属于高性能处理器领域的顶尖产品。它从2020年开始进入市场,现已成为市场上最热门的处理器之一。该产品因其高效能、强大的计算能力
    的头像 发表于 08-15 17:04 1780次阅读

    RK3588RK3399的区别

    等存储器,并且支持PCIe4.0和USB 3.2 Gen1接口,可实现高速传输和多设备连接。在AI方面,RK3588支持多种神经网络,如ResNet、SSD、YOLO、FCN等,并可以通过开放的SDK进行
    的头像 发表于 08-15 17:04 4080次阅读

    RK35883588s的区别

    RK35883588s的区别 Rockchip RK3588RK3588s是两种功能强大且广受欢迎的片上系统(SoC)解决方案,用于一系列设备,包括智能电视、高性能平板电脑、笔记本
    的头像 发表于 08-15 17:03 1.4w次阅读

    RK3588RK3066哪个好?

    RK3588RK3066哪个好? Rockchip是一家中国的半导体公司,专注于提供高性能低成本的芯片解决方案。在Rockchip的产品线中,RK3588RK3066是两个备受关注
    的头像 发表于 08-15 16:44 682次阅读

    RK3588RK3588S比较哪个好?

    RK3588RK3588S比较哪个好? 随着物联网、人工智能和大数据的快速发展,处理器、芯片等微电子产品的重要性也越来越高。越来越多的人对于处理器的选择变得更加谨慎,因为一个好的处理器在设备的运作
    的头像 发表于 08-15 16:44 7169次阅读

    rk3588rk3588s的区别

    rk3588rk3588s的区别 Rockchip是一家专业的半导体公司,成立于2001年,总部位于中国深圳,主要从事集成电路的设计、开发和销售。他们的热门产品RK3588RK3588
    的头像 发表于 08-15 16:44 8948次阅读

    搭载RK3588Orange Pi 5 Plus再破性能“天花板”

    OrangePi5Plus来了。令人惊艳的OrangePi5家族将又添一个重量级新成员!作为香橙派首款搭载瑞芯微RK3588的开发板,OrangePi5Plus将成为顶级高性能开发板的臻选。先说几个
    的头像 发表于 05-15 14:46 1216次阅读
    搭载<b class='flag-5'>RK3588</b>,<b class='flag-5'>Orange</b> <b class='flag-5'>Pi</b> 5 <b class='flag-5'>Plus</b>再破性能“天花板”