本文对比一下两种pth文件转为onnx的区别以及onnx文件在NETRON中的图

  1. 只有参数的pth文件:cat_dog.pth
  2. 既有参数又有模型结构的pth文件:cat_dog_model_args.pth
  3. 既有参数又有模型结构的onnx文件:cat_dog_model_args.onnx

cat_dog_model.pth 在NETRON中的图(无网络架构)

由于没有网络结构,所以不能通过代码将其转为onnx文件

cat_dog_model_args.pth 在NETRON中的图

cat_dog_model_args.onnx在NETRON中的图

先将cat_dog_model_args.pth 转为cat_dog_model_args.onnx
代码:

import torch
import torchvision
dummy_input = torch.randn(1, 3, 224, 224)
model = torch.load('D:\***\swin_transformer_flower\cat_dog_model_args.pth')
model.eval()
input_names = ["input"]
output_names = ["output"]
torch.onnx.export(model,dummy_input,"cat_dog_model_args.onnx",verbose=True,input_names=input_names,output_names=output_names)

运行以上代码
输出

graph(%input : Float(1:150528, 3:50176, 224:224, 224:1, requires_grad=0, device=cpu),%features.0.weight : Float(64:27, 3:9, 3:3, 3:1, requires_grad=0, device=cpu),%features.0.bias : Float(64:1, requires_grad=0, device=cpu),%features.2.weight : Float(64:576, 64:9, 3:3, 3:1, requires_grad=0, device=cpu),%features.2.bias : Float(64:1, requires_grad=0, device=cpu),%features.5.weight : Float(128:576, 64:9, 3:3, 3:1, requires_grad=0, device=cpu),%features.5.bias : Float(128:1, requires_grad=0, device=cpu),%features.7.weight : Float(128:1152, 128:9, 3:3, 3:1, requires_grad=0, device=cpu),%features.7.bias : Float(128:1, requires_grad=0, device=cpu),%features.10.weight : Float(256:1152, 128:9, 3:3, 3:1, requires_grad=0, device=cpu),%features.10.bias : Float(256:1, requires_grad=0, device=cpu),%features.12.weight : Float(256:2304, 256:9, 3:3, 3:1, requires_grad=0, device=cpu),%features.12.bias : Float(256:1, requires_grad=0, device=cpu),%features.14.weight : Float(256:2304, 256:9, 3:3, 3:1, requires_grad=0, device=cpu),%features.14.bias : Float(256:1, requires_grad=0, device=cpu),%features.17.weight : Float(512:2304, 256:9, 3:3, 3:1, requires_grad=0, device=cpu),%features.17.bias : Float(512:1, requires_grad=0, device=cpu),%features.19.weight : Float(512:4608, 512:9, 3:3, 3:1, requires_grad=0, device=cpu),%features.19.bias : Float(512:1, requires_grad=0, device=cpu),%features.21.weight : Float(512:4608, 512:9, 3:3, 3:1, requires_grad=0, device=cpu),%features.21.bias : Float(512:1, requires_grad=0, device=cpu),%features.24.weight : Float(512:4608, 512:9, 3:3, 3:1, requires_grad=0, device=cpu),%features.24.bias : Float(512:1, requires_grad=0, device=cpu),%features.26.weight : Float(512:4608, 512:9, 3:3, 3:1, requires_grad=0, device=cpu),%features.26.bias : Float(512:1, requires_grad=0, device=cpu),%features.28.weight : Float(512:4608, 512:9, 3:3, 3:1, requires_grad=0, device=cpu),%features.28.bias : Float(512:1, requires_grad=0, device=cpu),%classifier.0.weight : Float(100:25088, 25088:1, requires_grad=1, device=cpu),%classifier.0.bias : Float(100:1, requires_grad=1, device=cpu),%classifier.3.weight : Float(2:100, 100:1, requires_grad=1, device=cpu),%classifier.3.bias : Float(2:1, requires_grad=1, device=cpu)):%31 : Float(1:3211264, 64:50176, 224:224, 224:1, requires_grad=0, device=cpu) = onnx::Conv[dilations=[1, 1], group=1, kernel_shape=[3, 3], pads=[1, 1, 1, 1], strides=[1, 1]](%input, %features.0.weight, %features.0.bias) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\modules\conv.py:420:0%32 : Float(1:3211264, 64:50176, 224:224, 224:1, requires_grad=0, device=cpu) = onnx::Relu(%31) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:1134:0%33 : Float(1:3211264, 64:50176, 224:224, 224:1, requires_grad=0, device=cpu) = onnx::Conv[dilations=[1, 1], group=1, kernel_shape=[3, 3], pads=[1, 1, 1, 1], strides=[1, 1]](%32, %features.2.weight, %features.2.bias) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\modules\conv.py:420:0%34 : Float(1:3211264, 64:50176, 224:224, 224:1, requires_grad=0, device=cpu) = onnx::Relu(%33) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:1134:0%35 : Float(1:802816, 64:12544, 112:112, 112:1, requires_grad=0, device=cpu) = onnx::MaxPool[kernel_shape=[2, 2], pads=[0, 0, 0, 0], strides=[2, 2]](%34) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:586:0%36 : Float(1:1605632, 128:12544, 112:112, 112:1, requires_grad=0, device=cpu) = onnx::Conv[dilations=[1, 1], group=1, kernel_shape=[3, 3], pads=[1, 1, 1, 1], strides=[1, 1]](%35, %features.5.weight, %features.5.bias) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\modules\conv.py:420:0%37 : Float(1:1605632, 128:12544, 112:112, 112:1, requires_grad=0, device=cpu) = onnx::Relu(%36) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:1134:0%38 : Float(1:1605632, 128:12544, 112:112, 112:1, requires_grad=0, device=cpu) = onnx::Conv[dilations=[1, 1], group=1, kernel_shape=[3, 3], pads=[1, 1, 1, 1], strides=[1, 1]](%37, %features.7.weight, %features.7.bias) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\modules\conv.py:420:0%39 : Float(1:1605632, 128:12544, 112:112, 112:1, requires_grad=0, device=cpu) = onnx::Relu(%38) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:1134:0%40 : Float(1:401408, 128:3136, 56:56, 56:1, requires_grad=0, device=cpu) = onnx::MaxPool[kernel_shape=[2, 2], pads=[0, 0, 0, 0], strides=[2, 2]](%39) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:586:0%41 : Float(1:802816, 256:3136, 56:56, 56:1, requires_grad=0, device=cpu) = onnx::Conv[dilations=[1, 1], group=1, kernel_shape=[3, 3], pads=[1, 1, 1, 1], strides=[1, 1]](%40, %features.10.weight, %features.10.bias) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\modules\conv.py:420:0%42 : Float(1:802816, 256:3136, 56:56, 56:1, requires_grad=0, device=cpu) = onnx::Relu(%41) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:1134:0%43 : Float(1:802816, 256:3136, 56:56, 56:1, requires_grad=0, device=cpu) = onnx::Conv[dilations=[1, 1], group=1, kernel_shape=[3, 3], pads=[1, 1, 1, 1], strides=[1, 1]](%42, %features.12.weight, %features.12.bias) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\modules\conv.py:420:0%44 : Float(1:802816, 256:3136, 56:56, 56:1, requires_grad=0, device=cpu) = onnx::Relu(%43) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:1134:0%45 : Float(1:802816, 256:3136, 56:56, 56:1, requires_grad=0, device=cpu) = onnx::Conv[dilations=[1, 1], group=1, kernel_shape=[3, 3], pads=[1, 1, 1, 1], strides=[1, 1]](%44, %features.14.weight, %features.14.bias) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\modules\conv.py:420:0%46 : Float(1:802816, 256:3136, 56:56, 56:1, requires_grad=0, device=cpu) = onnx::Relu(%45) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:1134:0%47 : Float(1:200704, 256:784, 28:28, 28:1, requires_grad=0, device=cpu) = onnx::MaxPool[kernel_shape=[2, 2], pads=[0, 0, 0, 0], strides=[2, 2]](%46) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:586:0%48 : Float(1:401408, 512:784, 28:28, 28:1, requires_grad=0, device=cpu) = onnx::Conv[dilations=[1, 1], group=1, kernel_shape=[3, 3], pads=[1, 1, 1, 1], strides=[1, 1]](%47, %features.17.weight, %features.17.bias) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\modules\conv.py:420:0%49 : Float(1:401408, 512:784, 28:28, 28:1, requires_grad=0, device=cpu) = onnx::Relu(%48) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:1134:0%50 : Float(1:401408, 512:784, 28:28, 28:1, requires_grad=0, device=cpu) = onnx::Conv[dilations=[1, 1], group=1, kernel_shape=[3, 3], pads=[1, 1, 1, 1], strides=[1, 1]](%49, %features.19.weight, %features.19.bias) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\modules\conv.py:420:0%51 : Float(1:401408, 512:784, 28:28, 28:1, requires_grad=0, device=cpu) = onnx::Relu(%50) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:1134:0%52 : Float(1:401408, 512:784, 28:28, 28:1, requires_grad=0, device=cpu) = onnx::Conv[dilations=[1, 1], group=1, kernel_shape=[3, 3], pads=[1, 1, 1, 1], strides=[1, 1]](%51, %features.21.weight, %features.21.bias) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\modules\conv.py:420:0%53 : Float(1:401408, 512:784, 28:28, 28:1, requires_grad=0, device=cpu) = onnx::Relu(%52) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:1134:0%54 : Float(1:100352, 512:196, 14:14, 14:1, requires_grad=0, device=cpu) = onnx::MaxPool[kernel_shape=[2, 2], pads=[0, 0, 0, 0], strides=[2, 2]](%53) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:586:0%55 : Float(1:100352, 512:196, 14:14, 14:1, requires_grad=0, device=cpu) = onnx::Conv[dilations=[1, 1], group=1, kernel_shape=[3, 3], pads=[1, 1, 1, 1], strides=[1, 1]](%54, %features.24.weight, %features.24.bias) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\modules\conv.py:420:0%56 : Float(1:100352, 512:196, 14:14, 14:1, requires_grad=0, device=cpu) = onnx::Relu(%55) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:1134:0%57 : Float(1:100352, 512:196, 14:14, 14:1, requires_grad=0, device=cpu) = onnx::Conv[dilations=[1, 1], group=1, kernel_shape=[3, 3], pads=[1, 1, 1, 1], strides=[1, 1]](%56, %features.26.weight, %features.26.bias) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\modules\conv.py:420:0%58 : Float(1:100352, 512:196, 14:14, 14:1, requires_grad=0, device=cpu) = onnx::Relu(%57) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:1134:0%59 : Float(1:100352, 512:196, 14:14, 14:1, requires_grad=0, device=cpu) = onnx::Conv[dilations=[1, 1], group=1, kernel_shape=[3, 3], pads=[1, 1, 1, 1], strides=[1, 1]](%58, %features.28.weight, %features.28.bias) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\modules\conv.py:420:0%60 : Float(1:100352, 512:196, 14:14, 14:1, requires_grad=0, device=cpu) = onnx::Relu(%59) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:1134:0%61 : Float(1:25088, 512:49, 7:7, 7:1, requires_grad=0, device=cpu) = onnx::MaxPool[kernel_shape=[2, 2], pads=[0, 0, 0, 0], strides=[2, 2]](%60) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:586:0%62 : Float(1:25088, 512:49, 7:7, 7:1, requires_grad=0, device=cpu) = onnx::AveragePool[kernel_shape=[1, 1], strides=[1, 1]](%61) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:936:0%63 : Float(1:25088, 25088:1, requires_grad=0, device=cpu) = onnx::Flatten[axis=1](%62) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torchvision\models\vgg.py:45:0%64 : Float(1:100, 100:1, requires_grad=1, device=cpu) = onnx::Gemm[alpha=1., beta=1., transB=1](%63, %classifier.0.weight, %classifier.0.bias) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:1690:0%65 : Float(1:100, 100:1, requires_grad=1, device=cpu) = onnx::Relu(%64) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:983:0%output : Float(1:2, 2:1, requires_grad=1, device=cpu) = onnx::Gemm[alpha=1., beta=1., transB=1](%65, %classifier.3.weight, %classifier.3.bias) # C:\Users\deep\anaconda3\envs\swin\lib\site-packages\torch\nn\functional.py:1690:0return (%output)Process finished with exit code 0


图片居中方法:
参考:CSDN博客文章中图片居中
即只需要在图片下方代码页最后加上#pic_center即可

使用onnx包将pth文件转换为onnx文件相关推荐

  1. office文件转换为pdf文件

    office文件转换为pdf文件 首先安装openoffice,自行百度 导入jar包,自行百度 引入坐标: <!-- 转pdf配置 --><dependency><gr ...

  2. 语音amr文件转换为mp3文件

    1.安卓前端生成amr语音文件,经过base64加密变成加密字符串 2.把加密后的字符串解密成amr文件 生成amr文件目录   String fileUrl = System.getProperty ...

  3. CAD文件转换为SVG文件

    引言 目前CAD技术已广泛应用于建筑设计.机械设计.城市规划.交通等领域,由其主流软件AutoCAD或在之基础上二次开发的软件生成的图纸层出不穷. SVG(Scalable Vector Graphi ...

  4. 使用Jacob实现将Word文件转换为Pdf文件

    在某些业务场景下,可能需要将Word文件转换为Pdf文件的需求,Word文件编辑方便,而Pdf文件查看更方便,并且格式基本不会变化,同时可以避免被误编辑. 如果使用的是Java语言,那么可以借助于Ja ...

  5. 如何将 EXE 文件转换为 APK 文件以在 Android 上运行

    什么是 .exe 文件? .exe 是一种非常常见的文件格式,它实际上是"可执行"文件的缩写形式.此类文件通常用于运行或安装 Windows 计算机的软件应用程序.您在 Windo ...

  6. python批量pdf转word,python批量实现Word文件转换为PDF文件

    本文为大家分享了python批量转换Word文件为PDF文件的具体方法,供大家参考,具体内容如下 1.目的 通过万能的Python把一个目录下的所有Word文件转换为PDF文件. 2.遍历目录 作者总 ...

  7. Python Qt GUI设计:将UI文件转换为Python文件的三种妙招(基础篇—2)

    目录 1.创建项目 2.将.ui文件生成.py文件 2.1.Eric 6编译 2.2.Python命令行编译 2.3.脚本编译 3.界面.逻辑分离思想 在开始本文之前提醒各位朋友,Python记得安装 ...

  8. python npy文件_python实现npy格式文件转换为txt文件操作

    如下代码会将npy的格式数据读出,并且输出来到控制台: import numpy as np ##设置全部数据,不输出省略号 import sys np.set_printoptions(thresh ...

  9. GDCM:将PAPYRUS 3.0文件转换为dcm文件的的测试程序

    GDCM:将PAPYRUS 3.0文件转换为dcm文件的测试 GDCM:将PAPYRUS 3.0文件转换为dcm文件的测试 GDCM:将PAPYRUS 3.0文件转换为dcm文件的测试 #includ ...

  10. GDCM:DICOM文件转换为QImage文件的测试程序

    GDCM:DICOM文件转换为QImage文件的测试程序 GDCM:DICOM文件转换为QImage文件的测试程序 GDCM:DICOM文件转换为QImage文件的测试程序 #include &quo ...

最新文章

  1. 电商顾客满意的五大决定因素
  2. Objective-C 反射机制
  3. 3d点击_3D打印服务加工在医疗器械行业的应用
  4. 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
  5. MyEclipse里运行Tomcat后,Console窗口里中文显示乱码
  6. react学习预备知识_在10分钟内学习React基础知识
  7. 固定资产拆分比例怎么计算_固定资产加速折旧优惠扩围!怎么计算、申报?这篇说全了...
  8. python compile函数_python 内置函数 compile()
  9. 13.4 Shelve模块
  10. 关键词文章自动生成工具-关键词组合工具-关键词文章采集工具
  11. Au 音频效果参考:调制
  12. python图灵机器人教程_Python-微信图灵机器人
  13. ( 教程 ) 微信公众号做淘宝优惠券自动查券返利机器人怎么设置?
  14. 远程访问计算机硬盘,60秒远程访问路由器硬盘!瞬间变NAS!
  15. python中ix用法_在python的pandas模块中,DataFrame对象,如何选择一行?索引、loc、iloc、ix的用法及区别...
  16. 微信小程序自定义生成动态分享内容
  17. [附源码]java毕业设计学校缴费系统
  18. C2Prog 串口烧录出现Connecting with target… failed(no response)!
  19. 掩码、子网掩码及子网划分
  20. java将图片存储在数据库(mysql)

热门文章

  1. luogu2024 食物链
  2. Flask开发微电影网站(二)
  3. MVC与单元测试实践之健身网站(八)-统计分析
  4. 文件搜索工具everything
  5. 关于intent传递数据的练习
  6. 【Vegas原创】使用GreenAMP时,提示“无法载入mysql扩展”解决方法
  7. ajax的核心有哪些,ajax的核心
  8. 拉马车 的游戏 c语言编程,蓝桥杯 拉马车(模拟)
  9. html 自定义标签解析,Java解析Html自定义标签的属性
  10. java final类的写法_重拾JavaSE基础——抽象类、接口、代码块、final和枚举