地平线 旭日X3开发板 (三) 工具链仿真/板上测试

目前tensorflow,pytorch首先需要将自己的模型转为onnx模型,再使用工具链条转换模型; caffe可直接使用工具链转换,目前Onnx支持的版本为opset10。

本文选择yolov2案例,官方已在工具链中提供yolov2的caffe模型,可直接运行测试。

一.检查模型

  • 进入示例脚本放置的文件夹
cd samples/04_detection/01_yolov2/mapper
  • 执行模型检查
sh 01_check.sh

在这里插入图片描述

二.校准

  • 首先需要创建文件以下文件目录,准备一些数据。
    #此文件只放图片(几十张就行了)
    samples/01_common/data/coco/calibration_data
    #此文件下需要放coco数据集格式
    samples/01_common/data/coco/coco_val2017
    在这里插入图片描述

  • 开始校准

 sh 02_preprocess.sh

在这里插入图片描述

三.build runtime模型

此步骤根据转换的配置文件,转换为开发板使用模型(自定义模型需要根据自己的模型更改)。

#yolov2的转换的配置文件为yolov2_config.yaml
sh 03_build.sh

转换成功后输出以下内容,以及在model_output下生成yolov2_hybrid_horizonrt.bin
在这里插入图片描述

四.Demo运行测试

此步骤建立在完成前面一二三步骤基础上。

4.1 开发机仿真运行(不需要的直接跳到4.2)

  • 1.构建
cd samples/04_detection/01_yolov2/runtime_sim
sh 01_build.sh

构建结束后,会生成release 文件夹。

  • 2.数据预处理
sh 02_preprocess.sh
  • 3.推理
sh 03_infer.sh

推理完成会保存这在imgae_out下。在这里插入图片描述

  • 4.模型评测
    因为没有完整数据集这里跳过这步

4.2 板上运行

  • 1.构建
cd samples/04_detection/01_yolov2/runtime_arm
sh 01_build.sh
  • 2.数据预处理(可以不需要)
sh 02_preprocess.sh
  • 3.打包发送到开发板
#这里IP为开发板的IP地址
sh 03_scp_to_board.sh 192.168.124.103

发送文件后在开发板/userdata/samples目录下。

  • 4.ssh开发板运行推理脚本
cd /userdata/samples/yolov2
sh dev_board_01_infer.sh

输出图片在image_out目录下
在这里插入图片描述

五.参考

https://developer.horizon.ai/resource
https://developer.horizon.ai/forum/id=5f5f19e8cc8b1e59c8582b0a

猜你喜欢

转载自blog.csdn.net/djj199301111/article/details/110817854