模型转为RKNN格式

1.onnx参数说明

  • 其中的input_size_list必须是静态参数

2.模型参数查看脚本

示例输出:

复制代码
=== 输入节点 ===
Name: images
Shape: [1, 3, 640, 640]

=== 输出节点 ===
Name: output
Shape: [1, 255, 80, 80]
Name: 283
Shape: [1, 255, 40, 40]
Name: 285
Shape: [1, 255, 20, 20]

import onnx

# 加载模型
model = onnx.load('yolov5s_relu.onnx')

# 查看所有输入
print("=== 输入节点 ===")
for input in model.graph.input:
    print(f"Name: {input.name}")
    # 获取 shape
    shape = [dim.dim_value if dim.dim_value else dim.dim_param 
             for dim in input.type.tensor_type.shape.dim]
    print(f"Shape: {shape}")
    # print(f"Dtype: {input.type.tensor_type.elem_type}")  # 1=FLOAT, 7=INT64

# 查看所有输出
print("\n=== 输出节点 ===")
for output in model.graph.output:
    print(f"Name: {output.name}")
    shape = [dim.dim_value if dim.dim_value else dim.dim_param 
             for dim in output.type.tensor_type.shape.dim]
    print(f"Shape: {shape}")

# 查看所有中间节点(可选)
# print("\n=== 所有节点 ===")
# for node in model.graph.node:
#     print(f"{node.op_type}: {node.name}")

3.模型转换脚本

复制代码
from rknn.api import RKNN
rknn = RKNN(verbose=True)

rknn.config(
    target_platform='rk3568',
    
 )
batch_size=1
sequence_length=512
past_sequence_length=512

ret = rknn.load_onnx(model='yolov5s_relu.onnx')
if ret != 0:
    print('Load model failed!')
    exit(ret)
print('done')
ret = rknn.build(do_quantization=False)
if ret != 0:
    print('Load model failed!')
    exit(ret)
print('done')
ret = rknn.export_rknn(export_path='./rknn.rknn')
if ret != 0:
    print('Load model failed!')
    exit(ret)
print('done')
相关推荐
2402_854808371 分钟前
CSS如何实现元素在容器内居中_利用margin-auto技巧
jvm·数据库·python
weixin_580614002 分钟前
html标签怎么表示用户输入_kbd标签键盘快捷键标注【介绍】
jvm·数据库·python
m0_716430073 分钟前
如何监控集群 interconnect_ping与traceroute验证心跳通畅.txt
jvm·数据库·python
m0_678485454 分钟前
如何通过 curl 调用 Go 标准库 RPC 服务(JSON-RPC 协议)
jvm·数据库·python
2401_8654396316 分钟前
HTML5中SVG原生动画标签Animate的基础用法
jvm·数据库·python
萝卜小白17 分钟前
算法实习day03-碎碎念
python·ai·实习
XY_墨莲伊18 分钟前
【实战项目】基于B/S结构Flask+Folium技术的出租车轨迹可视化分析系统(文末含完整源代码)
开发语言·后端·python·算法·机器学习·flask
Trisyp24 分钟前
使用 APScheduler 实现精细化的定时任务
python·apscheduler
z64943150827 分钟前
【Python开源-单目测距】单目无人机多视角测距:DJI RTK图像 → 地面目标3D坐标与距离,平均RE仅2.12%
python·计算机视觉·开源·无人机
Fleshy数模28 分钟前
PyQt5 登录界面开发全流程:从环境配置到可视化设计
开发语言·python·qt