嘉楠勘智k230开发板上手记录(四)--HHB神经网络模型部署工具

按照K230_AI实战_HHB神经网络模型部署工具.mdHHB文档RISC-V 编译器和模拟器安装

一、环境

1. 拉取docker 镜像然后创建docker容器并进入容器
复制代码
docker pull hhb4tools/hhb:2.4.5
docker run -itd --name=hhb2_4 -p 22 "hhb4tools/hhb:2.4.5"
docker exec -it hhb2_4 /bin/bash
2. docker镜像我也上传到了网盘上
复制代码
链接:https://pan.baidu.com/s/1LKDwt4BM_rH76-W15KXykA 
提取码:zghq 
--来自百度网盘超级会员V5的分享
3. 安装一些需要的库
复制代码
sudo apt-get update
sudo apt-get install -y python3 python3-dev python3-setuptools gcc libtinfo-dev zlib1g-dev build-essential cmake libedit-dev libxml2-dev llvm
4. RISC-V 编译器和模拟器安装

下载解压

复制代码
wget https://github.com/T-head-Semi/csi-nn2/releases/download/v2.0.20/Xuantie-900-gcc-linux-5.10.4-glibc-x86_64-V2.6.1-20220906.tar.gz

tar xf Xuantie-900-gcc-linux-5.10.4-glibc-x86_64-V2.6.1-20220906.tar.gz

wget https://github.com/T-head-Semi/csi-nn2/releases/download/v2.0.20/xuantie-qemu-x86_64-Ubuntu-18.04-20221104-0752.tar.gz

mkdir xuantie-qemu-x86_64-Ubuntu-18.04-20221104-0752
cd xuantie-qemu-x86_64-Ubuntu-18.04-20221104-0752
tar xf ../xuantie-qemu-x86_64-Ubuntu-18.04-20221104-0752.tar.gz

设置查找路径

复制代码
echo "export PATH=/root/Xuantie-900-gcc-linux-5.10.4-glibc-x86_64-V2.6.1/bin:$PATH" >> ~/.bashrc
echo "export PATH=/root/xuantie-qemu-x86_64-Ubuntu-18.04-20221104-0752/bin:$PATH" >> ~/.bashrc
source ~/.bashrc

两个压缩包我都上传到了网盘上

复制代码
链接:https://pan.baidu.com/s/1F33VcOYAzhVr2mPeIAgdsw 
提取码:69ru 
--来自百度网盘超级会员V5的分享

二、编译模型

k230是基于玄铁c908的,但是docker中没有c908的案例。需要自己修改。因为嘉楠勘智官方文档中HHB镜像链接失效了,所以具体命令可能有点不一样。

拷贝c906并修改相关配置

复制代码
cd example/
cp -a basic/c906 c908
cd c908/onnx_mobilenetv2/

run.sh相关修改

  • 修改--board参数的值(c906改为c908)
  • 添加校正集参数( -cd )
  • 添加量化参数(--quantization-scheme)

最后修改后run.sh内容如下

复制代码
#!/bin/bash -x

hhb -S --model-file ../../basic/model/mobilenetv2-12.onnx  --data-scale 0.017 --data-mean "124 117 104" --board c908 --input-name "input" --output-name "output" --input-shape "1 3 224 224" -cd persian_cat.jpg   --quantization-scheme "int8_asym_w_sym"  --postprocess save_and_top5 --simulate-data persian_cat.jpg

更多有关hhb的命令行选项的可以看平头哥的官方文档

运行sh

复制代码
./run.sh

最后生成hhb_out目录,如下

将hhb_out目录拷贝到,导出到wsl的ubuntu中, 后续需要使用k230 rtt工具链重新交叉编译

没找到官方文档里的example/hhb文件夹,先暂停

相关推荐
CODECOLLECT7 分钟前
京元 I62D Windows PDA 技术拆解:Windows 10 IoT 兼容 + 硬解码模块,如何降低工业软件迁移成本?
stm32·单片机·嵌入式硬件
BackCatK Chen43 分钟前
STM32+FreeRTOS:嵌入式开发的黄金搭档,未来十年就靠它了!
stm32·单片机·嵌入式硬件·freertos·低功耗·rtdbs·工业控制
全栈游侠3 小时前
STM32F103XX 02-电源与备份寄存器
stm32·单片机·嵌入式硬件
Lsir10110_3 小时前
【Linux】中断 —— 操作系统的运行基石
linux·运维·嵌入式硬件
深圳市九鼎创展科技6 小时前
瑞芯微 RK3399 开发板 X3399 评测:高性能 ARM 平台的多面手
linux·arm开发·人工智能·单片机·嵌入式硬件·边缘计算
辰哥单片机设计6 小时前
STM32项目分享:车辆防盗报警系统
stm32·单片机·嵌入式硬件
小龙报7 小时前
【51单片机】从 0 到 1 玩转 51 蜂鸣器:分清有源无源,轻松驱动它奏响新年旋律
c语言·数据结构·c++·stm32·单片机·嵌入式硬件·51单片机
范纹杉想快点毕业7 小时前
嵌入式与单片机开发核心学习指南——从思维转变到第一性原理的深度实践
单片机·嵌入式硬件
Industio_触觉智能7 小时前
瑞芯微RK3566开发板规格书,详细参数配置,型号EVB3566-V1,基于RK3566核心板SOM3566邮票孔封装
嵌入式硬件·开发板·rk3568·rk3566·核心板·瑞芯微
czwxkn8 小时前
4STM32(stdl)TIM定时器
stm32·单片机·嵌入式硬件