YOLO教程|RK3576平台AI测试之YOLOv5 模型测试
天嵌TQ3576核心板是一款集高性能、高算力、高性价比于一体的嵌入式平台,为需要强大处理能力和AI加速的应用场景设计,8核心处理器,主频高达2.2GHZ,性能强劲且能耗出色,6TOPS算力NPU,为AI模型部署、图像识别等应用提供强大算力支撑。

图1核心板
核心板基于瑞芯微RK3576处理器设计,小巧紧凑,采用板对板连接,既稳定可靠,又兼顾成本与灵活性。320个引脚全引出,实现丰富接口拓展,方便用户快速进行产品方案评估与技术预研。

图2同一核心板搭配两种不同底板
----------------------------------------------------------------------------------------------
TQ3576_Linux_AI使用手册
第三章 AI测试
一键开启性能模式
echo performance | tee $(find /sys/ -name *governor);
modelzoo 模型测试
modelzoo 是瑞芯微提供的一系列各种模型的模型集合,网址如下:https://github.com/airockchip/rknn_model_zoo
RKNN Model Zoo 提供了大量模型转换与部署的示例代码,旨在帮助用户快速在搭载瑞芯微芯片的开发板上运行各种模型。
sdk下已提供该源码,来到sdk目录下,进入该目录:
· build-android.sh 用于目标编译 Android 系统开发板的编译脚本
· build-linux.sh 用于目标编译 linux 系统开发板的编译脚
测试前准备
conda activate python3.11-tk2-2.3
编译demo需要指定交叉编译器,可以使用我司提供的交叉编译器,如:
export GCC_COMPILER=/opt/EmbedSky/TQ3576/bin/aarch64-none-linux-gnu
注意:交叉编译工具链必须使用我司 /2-软件资料/Linux系统/4-工具/2-应用开发工具 下的 R1.4版本编译工具链:TQ3576-toolchain.tar.bz2 。
在external/rknn_model_zoo目录下需要用到build-linux.sh脚本进行编译,所以要赋予可执行权限:
模型测试需要从网络下载训练好的模型,请确保主机网络连接正常。
YOLOv5 模型测试
YOLOv5 是 YOLO 目标检测算法系列的最新版本之一。作为计算机视觉领域的重要进展,YOLOv5 在目标检测方面取得了显著的性能提升。
关于训练及更多细节请参考 YOLOv5 的源码链接:https://github.com/ultralytics/yolov5
首先在sdk目录下来到modelzoo目录下:
通过执行模型下载脚本来下载官方训练好的模型,执行前请确保主机的网络连接正常,并赋予可执行权限:
sudo chmod +x download_model.sh
./download_model.sh
下载完成,模型文件为目录下的yolov5s_relu.onnx:
执行如下命令,进行转换 yolov5 模型,在执行前请确保当前终端已经进入了 conda 环境:
python3 convert.py ../model/yolov5s_relu.onnx rk3576
转换完成后,需要先将 c++ 目录中用于在板子上跑的例程编译出来。
回到rknn_model_zoo目录下:
执行rknn_model_zoo目录下的 build-linux.sh 脚本,编译 yolov5 的 c++ 例程:
./build-linux.sh -t rk3576 -a aarch64 -d yolov5
编译完成会在 modelzoo 目录下的 install/rk3576_linux_aarch64/rknn_yolov5_demo 生成可执行文件、打包模型和demo图片等文件:
执行以下命令将模型和可执行文件等都拷贝到开发板上,推送前请确保板子连接好数据线:
adb push install/rk3576_linux_aarch64/rknn_yolov5_demo/ /userdata/
cd /userdata/rknn_yolov5_demo/
chmod +x rknn_yolov5_demo
被推理的 bus.jpg 如下,图片在 model 目录下:
./rknn_yolov5_demo model/yolov5.rknn model/bus.jpg
可以看到识别到一个bus 和四个person:
推理完成后,会在目录下生成一张图片,文件名为out.png:









