当前位置: 首页 > news >正文

模仿学习模型ACT部署

首先下载act代码:https://github.com/tonyzhaozh/act

修改代码imitate_episodes.py,在第250行处增加:

torch.onnx.export(policy, (qpos, curr_image), "model.onnx", opset_version=13)

导出onnx模型结构如下:在这里插入图片描述
onnxruntime推理脚本:

import numpy as np
import onnxruntimeonnx_session = onnxruntime.InferenceSession("model.onnx", providers=['CUDAExecutionProvider', 'CPUExecutionProvider'])input_name = []
for node in onnx_session.get_inputs():input_name.append(node.name)output_name = []
for node in onnx_session.get_outputs():output_name.append(node.name)qpos = np.random.randn(1, 14).astype(np.float32)
curr_image = np.random.randn(1, 1, 3, 480, 640).astype(np.float32)inputs = {}
inputs['onnx::Gemm_0'] = qpos
inputs['tensor'] = curr_imageoutputs = onnx_session.run(None, inputs)
print(outputs)

tensorrt推理脚本:

import cv2
import numpy as np
import tensorrt as trt
import commonif __name__ == '__main__':logger = trt.Logger(trt.Logger.WARNING)with open("model.engine", "rb") as f, trt.Runtime(logger) as runtime:engine = runtime.deserialize_cuda_engine(f.read())context = engine.create_execution_context()inputs, outputs, bindings, stream = common.allocate_buffers(engine)qpos = np.random.randn(1, 14).astype(np.float32)curr_image = np.random.randn(1, 1, 3, 480, 640).astype(np.float32)np.copyto(inputs[0].host, qpos.ravel())np.copyto(inputs[1].host, curr_image.ravel())output = common.do_inference(context,engine=engine, bindings=bindings,inputs=inputs, outputs=outputs, stream=stream,)print(output)
http://www.dtcms.com/a/365857.html

相关文章:

  • 辉芒微MCU需要熟悉哪些指令?这15条核心指令与入门要点必须掌握
  • Linux gzip 命令详解:从基础到高级用法
  • Python基础(①①Ctypes)
  • C 内存对齐踩坑记录
  • 【随手记】vscode中C语言满足KR风格的方法
  • Elasticsearch核心数据类型
  • 深度学习——卷积神经网络
  • AI产品经理面试宝典第84天:RAG系统架构设计与优化策略面试指南
  • 分布式AI算力系统番外篇-----超体的现世《星核》
  • 【Doris入门】Doris数据表模型使用指南:核心注意事项与实践
  • 从PkiAsn1Decode函数到ASN1Dec_SignedDataWithBlobs函数
  • 中山AI搜索优化实践:技术干货解析与金拓智能案例
  • select, poll, epoll
  • 【108】基于51单片机智能输液监测系统【Proteus仿真+Keil程序+报告+原理图】
  • 详尽 | Deeplabv3+结构理解
  • CSS中使用 HSL(Hue, Saturation, Lightness) 动态生成色值
  • 二叉树结尾——销毁,层序遍历与判断完全二叉树
  • python如何解决html格式不规范问题
  • windows系统服务器测试部署springboot+vue+mysql项目
  • 使用 Acme.sh 获取和管理免费 SSL 证书
  • vue2头部布局示例
  • Anaconda3出现Fatal error in launcher: Unable to create process using.....问题
  • python 连接数据库进行文件查重(SAP版本)
  • RoPE位置编码缩放因子的最优解:频率维度与位置敏感度的精妙权衡
  • TypeScript:Promise的详细用法讲解
  • 面试复习题--kotlin的设计模式
  • shell内置命令
  • UART更好的封装 添加容错代码
  • Qt6用Chart模块做数据可视化?别再用老套路,看看这套35张图背后的秘密
  • [密码学实战](GBT 15843.2-2017)Java实现基于SM4的实体鉴别机制(四十八)