简介
Open Neural Network Exchange(ONNX,开放神经网络交换)格式,是一个用于表示深度学习模型的标准,可使模型在不同框架之间进行转移。

ONNX是一种针对机器学习所设计的开放式的文件格式,用于存储训练好的模型。它使得不同的人工智能框架(如Pytorch, MXNet)可以采用相同格式存储模型数据并交互。 ONNX的规范及代码主要由微软,亚马逊 ,Facebook 和 IBM等公司共同开发,以开放源代码的方式托管在Github上。目前官方支持加载ONNX模型并进行推理的深度学习框架有: Caffe2, PyTorch, MXNet,ML.NET,TensorRT 和 Microsoft CNTK,并且 TensorFlow也非官方的支持ONNX。
代码实现( .pth --> .onnx )

import torch
import torch.onnx
from tinynet import tinynet
from conf import settings
import osdef pth_to_onnx(input, checkpoint, onnx_path, input_names=['input'], output_names=['output'], device='cpu'):if not onnx_path.endswith('.onnx'):print('Warning! The onnx model name is not correct,\please give a name that ends with \'.onnx\'!')return 0model = tinynet()model.load_state_dict(torch.load(checkpoint))model.eval()# model.to(device)torch.onnx.export(model, input, onnx_path, verbose=True, input_names=input_names, output_names=output_names)print("Exporting .pth model to onnx model has been successful!")if __name__ == '__main__':os.environ['CUDA_VISIBLE_DEVICES']='2'checkpoint = './tinynet.pth'onnx_path = './tinynet.onnx'input = torch.randn(1, 1, 640, 360)# device = torch.device("cuda:2" if torch.cuda.is_available() else 'cpu')pth_to_onnx(input, checkpoint, onnx_path)

Pytorch模型(.pth)转onnx模型(.onnx)相关推荐

  1. 将训练好的pytorch模型的pth文件转换成onnx模型(亲测成功)

    将训练好的pytorch模型的pth文件转换成onnx模型(亲测成功) 模型转换 声明:本文原创,未经许可严禁转载,原文地址https://blog.csdn.net/hutao1030813002/ ...

  2. Pytorch的pth模型转onnx,再用ONNX Runtime调用推理(附python代码)

    我做的是一个简单的二分类任务,用了个vgg11,因为要部署到应用,所以将 PyTorch 中定义的模型转换为 ONNX 格式,然后在 ONNX Runtime 中运行它,那就不用了在机子上配pytor ...

  3. 【地平线开发板 模型转换】将pytorch生成的onnx模型转换成.bin模型

    文章目录 1 获取onnx模型 2 启动docker容器 3 onnx模型检查 3.1 为什么要检查? 3.2 如何操作 4 图像数据预处理 4.1 一些问题的思考 4.2 图片挑选与放置 4.2 使 ...

  4. pytorch模型(.pt)转onnx模型(.onnx)的方法详解(1)

    1. pytorch模型转换到onnx模型 2.运行onnx模型 3.比对onnx模型和pytorch模型的输出结果 我这里重点是第一点和第二点,第三部分  比较容易 首先你要安装 依赖库:onnx ...

  5. pytorch保存onnx模型

    因为一些原因,需要用pytorch去创建.训练和保存模型.pytorch保存的模型通常为pth.pt.pkl的格式,但这种类型的模型不能在其他框架(tensorflow)下直接加载,因此需要将模型保存 ...

  6. 1、pth转onnx模型、onnx转tensorrt模型、python中使用tensorrt进行加速推理(全网最全,不信你打我)

    本文向所有亲们介绍在python当中配置tensorrt环境.使用tensorrt环境进行推理的教程,主要分为两大部分,第一部分环境配置,第二部分前向推理. 第一部分 环境配置 第一步:检查你的系统类 ...

  7. 超简单的pyTorch训练-onnx模型-C++ OpenCV DNN推理(附源码地址)

    学更好的别人, 做更好的自己. --<微卡智享> 本文长度为1974字,预计阅读5分钟 前言 很早就想学习深度学习了,因为平时都是自学,业余时间也有限,看过几个pyTorch的入门,都是一 ...

  8. pytorch将pt模型转onnx模型

    pytorch将pt模型转onnx模型 一 导出ONNX模型 torch.onnx.export( model, # 要导出的模型 args, # 模型的输入参数,输入参数只需满足shape正确 on ...

  9. 【yolov5】pytorch模型导出为onnx模型

    博主想拿官网的yolov5训练好pt模型,然后转换成rknn模型,然后在瑞芯微开发板上调用模型检测.但是官网的版本对npu不友好,所以采用改进结构的版本: 将Focus层改成Conv层 将Swish激 ...

最新文章

  1. sql多变量 双引号设置
  2. seo说_百度指数看世间沉浮_如何快速排名-互点快速排名_网站seo优化排名,网络推广的优化服务...
  3. 车载安卓中控改鸿蒙,教你改装车子中控安卓大屏,看一遍你就会了,改完后低配秒变高配...
  4. mysql改表字段类型导致数据丢失_故障分析 | 记一次 MySQL 主从双写导致的数据丢失问题【转】...
  5. css清除浮动的原理
  6. draw graph
  7. cass生成曲线要素文件_《CASS道路断面法施工技术》
  8. 基于微服务架构,改造企业核心系统之实践
  9. 【翻译】Emmet(Zen Coding)官方文档 之七 一览表
  10. 四十八种微信公众号加人方法
  11. 达梦数据库DEM(企业管理器)部署实战
  12. 使用EFR32作为Zigbee/Thread的sniffer的用法
  13. 如何对镶嵌数据集进行色彩平衡
  14. 《征服老板:零基础做出高逼格PPT》笔记(二)
  15. Commvault发布横向扩展一体机 矛头对准Rubrik和Cohesity
  16. 面试 - 阿里华为资深HR面试套路全揭晓
  17. JavaScript中自定义函数以及文本框、radio、下拉框的值的获取,结合淘宝竞拍案例来理解。。。...
  18. 如何使用AMR M分析rtp流中的amr语音
  19. TS 浅拷贝和深拷贝方法
  20. LORA技术简要说明

热门文章

  1. boost::mpl模块实现map相关的测试程序
  2. boost::hana::and_用法的测试程序
  3. boost::log模块实现从设置文件初始化库的示例
  4. boost::hana::basic_tuple用法的测试程序
  5. boost::contract模块实现断言等级的测试程序
  6. Boost::context模块callcc的斐波那契测试程序
  7. Boost:BOOST_CURRENT_FUNCTION的测试程序
  8. ITK:VTK图像到ITK图像
  9. VTK:PolyData之SmoothPolyDataFilter
  10. VTK:图片之CombiningRGBChannels