4413|6

7577

帖子

2

TA的资源

版主

楼主
 

#AI挑战营第二站# Windows环境ONNX转RKNN模型 [复制链接]

1、开发环境搭建

ONNX转RKNN模型最主要的是环境的安装,也是比较麻烦的,由于电脑性能一般,没开虚拟机,所以打算用Windows直接实现ONNX转RKNN模型,也参考了之前坛友的经验,最终实现了ONNX转RKNN模型。


还是用Anaconda来搭建开发环境。

首先输入命令【conda create --name=rknn python=3.6.13】安装新的开发环境,似乎只能用这个版本的Python。

安装完成之后,使用命令【conda activate rknn】进入环境。

之后输入命令来安装一些环境包【pip install scikit-build opencv-python==4.3.0.38 tensorflow==1.15.5 matplotlib】。

还有两个比较大的安装包,安装过程可能会出现问题。分别是【rknn_toolkit-1.7.5-cp36-cp36m-win_amd64.whl】和【torch-1.10.1-cp36-cp36m-win_amd64.whl】,我的torch倒是正常安装成功了,rknn_toolkit安装需要进行一些配置。

【rknn_toolkit-1.7.5】和【torch-1.10.1】百度云盘:

链接已隐藏,如需查看请登录或者注册

直接安装【rknn_toolkit】会报错,我就用离线的方式安装。安装过程中,可能会出现网络问题,大家可以用这个命令来更换pip源【pip config set global.index-url https://mirror.baidu.com/pypi/simple】。我更换完源之后,还是报了下面的错误,也是大多数Windows安装环境都会报的错误。

然后我查找了一下用windows安装过的小伙伴的帖子,在这个帖子下面找到了解决方案【https://bbs.eeworld.com.cn/thread-1280724-1-1.html】,默认的环境是不带cmake的,所以需要安装一下cmake,输入命令【pip install cmake】,安装cmake工具,这样再次安装【rknn_toolkit】就不会报错了。

 

2、模型转换

最难的环境搭建完成了,就是模型转换了,代码如下,把之前的onnx模型拿来,就可以直接进行转换了。

  • from rknn.api import RKNN
  • # 创建 RKNN 对象
  • rknn = RKNN()
  • # 加载 ONNX 模型
  • ret = rknn.load_onnx(model='mnist_cnn.onnx')
  • # 模型配置
  • rknn.config(mean_values=[[128]], std_values=[[128]]) #图片归一化到【-1,1】
  • # 模型转换
  • ret = rknn.build(do_quantization=False) # 这里设置是否量化
  • # 保存 RKNN 模型
  • ret = rknn.export_rknn('mnist_cnn.rknn')
  • # 释放 RKNN 对象
  • rknn.release()

执行代码,将模型成功转换。

 

mnist_cnn.rknn (51.31 KB, 下载次数: 1) mnist_cnn.onnx (86.5 KB, 下载次数: 2)

 

最新回复

不过我发现一个问题,转换后的模型在rk3588上提示: E RKNN: [12:46:58.380] Invalid RKNN format E RKNN: [12:46:58.380] rknn_init, load model failed! rknn_init failed! ret=-1 用附件给的rknn模型也是一样的,,,不知道是什么原因   详情 回复 发表于 2024-11-22 12:52
点赞 关注

回复
举报

7088

帖子

0

TA的资源

五彩晶圆(高级)

沙发
 

环境搭建的步骤有点复杂,步骤和装的东西真多

点评

很多时间都在解决报错问题。  详情 回复 发表于 2024-5-29 09:20
 
 

回复

7577

帖子

2

TA的资源

版主

板凳
 
Jacktang 发表于 2024-5-29 07:28 环境搭建的步骤有点复杂,步骤和装的东西真多

很多时间都在解决报错问题。

 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

4
 
测试有效,作者辛苦了

点评

没事,开始玩AI吗~  详情 回复 发表于 2024-11-20 19:12
 
 
 

回复

7577

帖子

2

TA的资源

版主

5
 
akheb 发表于 2024-11-20 17:00 测试有效,作者辛苦了

没事,开始玩AI吗~

 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

6
 

不过我发现一个问题,转换后的模型在rk3588上提示:
E RKNN: [12:46:58.380] Invalid RKNN format
E RKNN: [12:46:58.380] rknn_init, load model failed!
rknn_init failed! ret=-1
用附件给的rknn模型也是一样的,,,不知道是什么原因

点评

可能3588配置需要更多一些操作。  详情 回复 发表于 2024-11-22 13:13
 
 
 

回复

7577

帖子

2

TA的资源

版主

7
 
akheb 发表于 2024-11-22 12:52 不过我发现一个问题,转换后的模型在rk3588上提示: E RKNN: [12:46:58.380] Invalid RKNN format E RKNN ...

可能3588配置需要更多一些操作。

 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条
有奖直播:当AI遇见仿真,会有什么样的电子行业革新之路?
第2场直播:融合热仿真与热测试提升产品可靠性
直播时间:04月17日 14:00 - 15:00

查看 »

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网 4

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表