【北京迅为】itop-3562开发板在Linux系统中使用NPU
3.1 在 Linux 系统中使用 NPU
下载rknpu2并拷贝到虚拟机Ubuntu,如下图所示,RKNPU2提供了访问RK3562芯片
NPU的高级接口。
下载地址为“iTOP-RK3562开发板\02_【iTOP-RK3562开发板】开发资料\12_NPU使用配套
资料\01_rknpu2工具”
对于RK3562来说,Linux平台RKNN SDK库文件为librknnrt.so,如下图所示:
RK3562平台RKNN SDK包含了API使用示例程序、NPU运行库、服务程序、文档。
服务程序称为rknn_server,是在开发板上常驻的服务进程,用于连板推理。在RKNN SDK
中提供了Linux平台的MobileNet图像分类、SSD目标检测、YOLOv5目标检测示例。这些
Demo能够为客户基于RKNN SDK开发自己的AI应用提供参考。
在rknpu2/examples中还有很多其他例子,如下图所示:
下面以rknpu2/examples下的rknn_yolov5_demo在RK3562 Linux 64位平台(buildroot
系统)上运行为例,来讲解如何快速上手运行。整体思路分为三步:
1在虚拟机Ubuntu20.04上交叉编译demo程序rknn_yolov5_demo(demo已经默认是rknn,
无需进行模型转换)
2部署到iTOP-RK3562开发板
3在开发板上运行demo
3.1.1 设置交叉编译器
1安装gcc交叉编译器,
编译器下载地址是网盘资料“iTOP-3562开发板\02_【iTOP-RK3562开发板】开发资料
\12_NPU使用配套资料\03_编译所需工具\Linux”。
拷贝gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu.tar.gz到Ubuntu的/opt/目录下,
这里拷贝的路径要和作者保持一致,后面要用到交叉编译器的绝对路径。
2解压交叉编译器压缩包
tar -vxf gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu.tar.gz
解压后如下图所示:
解压完成后备用!
3.1.2 修改编译工具路径
1因为此章节以rknn_yolov5_demo在RK3562 Linux 64位平台上运行为例,所以修改
examples/rknn_yolov5_demo/build-XXX.sh的编译工具路径,
2修改build-linux_RK3562.sh文件,将TOOL_CHAIN修改为
gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu的解压路径并保存修改文件,如下图所示。
TOOL_CHAIN=/opt/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu
GCC_COMPILER=$TOOL_CHAIN/bin/aarch64-none-linux-gnu
3.1.3 更新 RKNN 模型
RKNN是Rockchip NPU平台(也就是开发板)使用的模型类型,是以.rknn结尾的模型文件。
RKNN SDK提 供 的demo程 序 中 默 认 自 带 了RKNN模 型 , 在RKNN SDK的
examples/rknn_yolov5_demo/model/RK3562/目录下,
如使用自己的模型需要转换成rknn模型,转换方法可以参考第5章节。
在得到RKNN模型之后,demo程序使用C接口在RK3562平台开发应用,
3.1.4 编译 demo
1在终端命令窗口进入rknn_yolov5_demo文件夹,输入以下命令:
3.1.4 编译 demo
1在终端命令窗口进入rknn_yolov5_demo文件夹,输入以下命令:
3 编译完成之后,编译好的程序一般放在install目录,
4网 盘 中 也 提 供 了 编 译 好 的Demo, 可 以 在 网 盘 资 料 资 料“iTOP-3562开 发 板\02_
【iTOP-RK3562开发板】开发资料\12_NPU使用配套资料\02_NPU demo\Linux”下载。
3.1.5 开发板运行 demo
1把编译好的程序rknn_yolov5_demo_Linux通过U盘拷贝到开发板的根目录上,开发板上要
烧写linux系统(buildroot)。
2进入程序所在的目录,输入以下命令:
cd /rknn_yolov5_demo_Linux
3运行程序来识别相应的图片中物体,输入以下命令:
./rknn_yolov5_demo ./model/RK3562/yolov5s-640-640.rknn ./model/bus.jpg
4运行完生成结果图片out.jpg,
5在windows下查看out.jpg,如下图所示:
主要参数:
CPU:RK3562
主频:四核ARM Cortex-A53处理器2.0GHz
内存:2GB,硬件兼容8GB
存储器:16GB EMMC
电源管理芯片:使用RK809
GPU:ARM Mali-G52 OpenGL ES 1.1/2.0/3.2, OpenCL 2.0, Vulkan 1.1
NPU:支持1T算力
多媒体:H.264解码1080p@60fps,H.265解码4K@30fps,H.264编码1080p@60fps
显示,支持MIPI、LVDS、RGB屏幕
核心板参数:
核心板尺寸:4.5*4.5cm
核心板高度:1.5mm
连接器型号:80pin AXK5F80347YG AXK6F80347YG 0.5mm
连接器高度:1.5mm
工作温度:-20℃到+60℃
供电参数:最小3.8V,最大4.2V,标准4V
引脚扩展:引出脚多达 240个,满足用户各类扩展需求
核心板接口资源:
USB2.0:2路,USB2.0 Host独立端口,与USB3.0不复用。
USB3.0:1,1路USB 3.0 Host
SPI:≤3,可配置主从模式
I2C:≤6,支持7bits和10bits地址模式,速率可达400K bits/s
UART:≤10,支持的波特率可达4Mbp
Audio:3x I2S/PCM/TDM,2x SPDIF(8ch),8ch PDM
PWM:≤16,支持16通道PWM,32bits定时器/计数器
TSADC:≤2,-20~120°C
SARADC:≤16,16个单端输入通道
MIPI_DSI:1,1个4-lane MIPI显示串行接口,支持MIPI V1.2
MIPI_CSI:≤4,2个4-lane MIPI-CSI或者4个2-lane MIPI-CSI
LVDS:1,1个4-lane lvds显示接口,800x1280@60Hz
RGB:1,支持RGB 888,最大分辨率2048x1080@60Hz
Ethernet:≤2,支持1路10/100/1000 Mbps data RGMII接口,支持1路10/100 Mbps data RMII接口
SDIO:SDIO3.0,4-bit
底板参数:
尺寸:190mm*110mm
POWER:直流电源输入接口(12V供电)
SWITCH:电源开关
WIFI蓝牙:支持
SIM卡槽:1个
TF卡槽:1个
MIPI CAMERA:2路MIPI CSI接口
SARADC:3路
GPIO:1路
232-UART:1路(调试串口)
USB2.0:2路
USB3.0:1路
RGB:1路
RTC :实时时钟
MIPI-TX:1路
LVDS :1路
PHONE:支持耳机输出
MIC:支持MIC输入
独立按键:7个
软件参数:
系统支持:Android13、Debian11、Buildroot、Ubuntu22
Uboot版本:2017.09版本
内核版本:5.10版本
-
Linux
+关注
关注
87文章
11319浏览量
209832 -
开发板
+关注
关注
25文章
5081浏览量
97692 -
NPU
+关注
关注
2文章
286浏览量
18656
发布评论请先 登录
相关推荐
评论