4112|2

365

帖子

0

TA的资源

版主

楼主
 

#AI挑战营第二站#RV1106手写MNIST模型onnx转换rknn [复制链接]

邀请:@spacexplorer   @cxzs1234   @supermiao123   @汤权   参与回复

环境部署不再赘述,可以参考之前写的帖子

RV1106手把手教你:yolov5图像识别模型从pt转换到onnx再到rknn

这次转换MNIST模型,还是一个思路,参考rknn-toolkit2中的yolov5的转换脚本,如rknn-toolkit2/rknn-toolkit2/examples/onnx/yolov5/test.py

1. 删掉所有推理测试的代码

2. 修改dataset.txt中的图片名称

3. IMG_PATH为dataset.txt处理前的图片,使用cv库进行灰度及resize操作

4. ONNX_MODEL为输入的onnx模型

5. RKNN_MODEL为输出的rknn模型

import os
import urllib
import traceback
import time
import sys
import numpy as np
import cv2
from rknn.api import RKNN

# Model from https://github.com/airockchip/rknn_model_zoo
ONNX_MODEL = 'mnist.onnx'
RKNN_MODEL = 'mnist.rknn'
IMG_PATH = './num_pre.jpg'
DATASET = './dataset.txt'

IMG_SIZE = 28

QUANTIZE_ON = True

if __name__ == '__main__':

    img = cv2.imread(IMG_PATH)
    img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
    img = cv2.resize(img, (IMG_SIZE, IMG_SIZE))
    cv2.imwrite('num.jpg', img)

    # Create RKNN object
    rknn = RKNN(verbose=True)

    # pre-process config
    print('--> Config model')
    # mean_values=[[28]], std_values=[[28]] ,
    rknn.config(target_platform='rv1106')
    print('done')

    # Load ONNX model
    print('--> Loading model')
    ret = rknn.load_onnx(model=ONNX_MODEL)
    if ret != 0:
        print('Load model failed!')
        exit(ret)
    print('done')

    # Build model
    print('--> Building model')
    ret = rknn.build(do_quantization=QUANTIZE_ON, dataset=DATASET)
    if ret != 0:
        print('Build model failed!')
        exit(ret)
    print('done')

    # Export RKNN model
    print('--> Export rknn model')
    ret = rknn.export_rknn(RKNN_MODEL)
    if ret != 0:
        print('Export rknn model failed!')
        exit(ret)
    print('done')

    rknn.release()

python3 test.py即可得到rknn模型

  mnist.rknn (58.38 KB, 下载次数: 0)

最新回复

请问转换后的rknn模型怎样使用呀? 直接运行好像不行   详情 回复 发表于 2024-6-12 16:03
点赞 关注

回复
举报

8

帖子

0

TA的资源

一粒金砂(中级)

沙发
 

请问转换后的rknn模型怎样使用呀? 直接运行好像不行

点评

可以看下其他的帖子,有讲运行的  详情 回复 发表于 2024-6-19 21:12
 
 

回复

365

帖子

0

TA的资源

版主

板凳
 
八月长安ii 发表于 2024-6-12 16:03 请问转换后的rknn模型怎样使用呀? 直接运行好像不行

可以看下其他的帖子,有讲运行的

 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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

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

北京市海淀区中关村大街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
快速回复 返回顶部 返回列表