[原创] #AI挑战营第二站# 基于RV1106芯片的RKNN环境部署及模型转换过程

knv   2024-4-28 17:18 楼主

RKNN模型是RK公司设计的一套模型格式,用于在rknpu上加速运行

ONNX模型是通用的开放模型格式,可以用于直接使用或模型转换。在专用npu上可能无法加速运行

网上搜到RV1106的RKNN模型转换需要用到下面的软件。

 

https://github.com/airockchip/rknn-toolkit2

 

RV1106文档地址如下:

https://github.com/airockchip/rknn-toolkit2/blob/master/doc/01_Rockchip_RV1106_RV1103_Quick_Start_RKNN_SDK_V2.0.0beta0_CN.pdf

 

环境配置:

使用ubuntu  python3.9

按照文档下载仓库

image-20240428171624-1.png  

image-20240428171624-2.png  

安装miniconda

 

wget -c https://mirrors.bfsu.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.sh

 

通过以下命令安装 Conda:

chmod 755 Miniconda3-latest-Linux-x86_64.sh

bash Miniconda3-latest-Linux-x86_64.sh

image-20240428171624-3.png  

进入conda环境

source ~/miniconda3/bin/activate

创建环境 python3.9版本

conda create -n hd2 python=3.9

激活环境

conda activate hd2

 

安装依赖

/rknn-toolkit2/rknn-toolkit2$ pip install -r  packages/

image-20240428171624-4.png  

 

注意:其中tf-estimator-nightly 使用清华源必定安装失败

使用豆瓣源 单独安装

 

pip install -i https://pypi.doubanio.com/simple/ tf-estimator-nightly==2.8.0.dev2021122109

 

安装完毕后,重新安装whl文件

经过漫长的等待,终于安装完毕

image-20240428171624-5.png  

编写模型转换代码

from rknn.api import RKNN

# 创建 RKNN 对象
rknn = RKNN()
# 配置目标平台
rknn.config(mean_values=[[28]], std_values=[[28]],target_platform='rv1106')
# 加载模型
ret = rknn.load_onnx(model='model.onnx')
# 创建量化参数
ret = rknn.build(do_quantization=True,dataset="./data.txt", rknn_batch_size=1)
# 导出模型
ret = rknn.export_rknn('model.rknn')
# 释放 RKNN 对象
rknn.release()

 

 

 

执行结果

image-20240428171624-6.png  

model.rknn (3.07 MB)
(下载次数: 5, 2024-4-28 17:17 上传)


 

 

本帖最后由 knv 于 2024-4-28 17:21 编辑

回复评论 (3)

现在的通用的开放模型格式真的不少了,ONNX模型玩这怎样

点赞  2024-4-30 07:33
引用: xianhangCheng 发表于 2024-5-8 11:25 rknn.config加上target_platform='rv1106'参数,就会报错,PermissionError: [WinError 32] 另一个程序正在 ...

发现有一个这个错误,

AssertionError: target_platform set as ['RV1106'] is not support

点赞  2024-5-8 11:31

4楼 knv 

引用: xianhangCheng 发表于 2024-5-8 11:31 发现有一个这个错误, AssertionError: target_platform set as ['RV1106'] is not support

跟我的步骤走的肯定没问题,手动创建一下data.txt

内容是一张测试图片的路径

我的是28*28像素的png

比如:

6.png

 

点赞  2024-5-8 14:18
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复