转换 pytorch 格式模型为 caffe格式模型 pth2caffemodel
基于 GitHub xxradon/PytorchToCaffe 源码,修改 example\resnet_pytorch_2_caffe.py 如下
import os
import sys
sys.path.insert(0, '.')import torch
from torch.autograd import Variable
from torchvision.models import resnet
import pytorch_to_caffe"""resnet models in pytorch format can be downloaded from‘resnet18’: ‘https://download.pytorch.org/models/resnet18-5c106cde.pth’,‘resnet34’: ‘https://download.pytorch.org/models/resnet34-333f7ec4.pth’,‘resnet50’: ‘https://download.pytorch.org/models/resnet50-19c8e357.pth’,‘resnet101’: ‘https://download.pytorch.org/models/resnet101-5d3b4d8f.pth’,‘resnet152’: ‘https://download.pytorch.org/models/resnet152-b121ed2d.pth’,"""def show_usage(cmd):print( "Usage:" )print( " ", cmd, " <pytorch-model-name> <pytorch-model-filename.pth>" )def main(cmd, argv):if( len(argv) < 2 ):print( "Error! Parameter is not enough." )show_usage( cmd )exit( 1 )model_name = argv[0]input_file = argv[1]pure_path = os.path.splitext( input_file )file_name = pure_path[0]print( " model : ", model_name )print( " input : ", input_file )print( " output : ", '{}.prototxt'.format(file_name) )print( " ", '{}.caffemodel'.format(file_name) )input=torch.ones([1,3,224,224])match model_name:case "resnet18":resnet_x = resnet.resnet18()case "resnet34":resnet_x = resnet.resnet34()case "resnet50":resnet_x = resnet.resnet50()case "resnet101":resnet_x = resnet.resnet101()case "resnet152":resnet_x = resnet.resnet152()case _:print( "Error! Unknown model name : ", model_name )show_usage( cmd )exit( 2 )if( False == os.path.isfile(input_file) ):print( "Error! Cannot find input file : ", input_file )show_usage( cmd )exit( 3 )checkpoint = torch.load(input_file)resnet_x.load_state_dict(checkpoint)resnet_x.eval()pytorch_to_caffe.trans_net(resnet_x,input,model_name)pytorch_to_caffe.save_prototxt('{}.prototxt'.format(file_name))pytorch_to_caffe.save_caffemodel('{}.caffemodel'.format(file_name))if __name__ == "__main__":main(sys.argv[0], sys.argv[1:])
脚本依赖pytorch,安装之。
pip install torch
运行中遇到 protobuf 版本过高问题,降级处理
pip install -U protobuf==3.20
下载 resnet model文件后,执行脚本
python example\resnet_pytorch_2_caffe.py resnet152 resnet152-b121ed2d.pth
相关文章:
转换 pytorch 格式模型为 caffe格式模型 pth2caffemodel
基于 GitHub xxradon/PytorchToCaffe 源码,修改 example\resnet_pytorch_2_caffe.py 如下 import os import sys sys.path.insert(0, .)import torch from torch.autograd import Variable from torchvision.models import resnet import pytorch_to_caffe"&q…...
【S32DS RTD实战】-1.3-S32K3工程生成S19,BIN,Hex文件,以及Post-build steps的妙用
目录 1 方法一:逐个生成Motorola S-record(s19,srec…),Intel HEX,Bin文件 1.1 生成Motorola S-record(s19,srec…)文件 1.2 生成Intel HEX文件 1.3 生成Bin文件 2 …...
Java工程找不到javax.xml.bind.annotation包
文章目录 问题解决方法参考 问题 最近Java工程找不到javax.xml.bind.annotation包,进行了解决。 解决方法 参考 stackoverflow: package javax.xml.bind.annotation does not exist error javax.xml.bind这个库从Java 11版本就被移除了,缺失了这个包…...
【C语言】网络字节序和主机字节序
网络字节序和主机字节序是计算机中字节的两种排序方式,它们主要用于解决不同计算机之间数据通信的问题。 一、网络字节序 也被称为大端字节序,是一种标准的字节序。在网络通信中,如果两台主机的字节序不同,可能会导致数据解释的二…...
极简模式,助力宏观数据监控
随着UWA GOT Online采样的参数越来越多样化,为了提升开发者的使用体验,我们最新推出了三种预设数据采集方案:极简模式、CPU模式、内存模式。该更新旨在降低多数据采集对数据准确性的干扰,同时也为大家提供更精准且有针对性的数据指…...
智能优化算法应用:基于花授粉算法3D无线传感器网络(WSN)覆盖优化 - 附代码
智能优化算法应用:基于花授粉算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于花授粉算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.花授粉算法4.实验参数设定5.算法结果6.参考文…...
IT圈的“鄙视链”大揭秘:从Java到Go,编程语言之战!
目录 编辑 Java程序员: 自信满满的领头羊 C语言程序员: 严肃的技术守护者 汇编语言程序员: 古老的传承者 Go语言程序员: 新晋的潜力股 结语: 编程语言,相互鄙视中求共存 我的其他博客 在IT圈…...
【C++】算法库(复制操作、交换操作、变换操作)
C算法库 文章目录 C算法库复制操作copy , copy_ifcopy_ncopy_backward 交换操作swapswap_rangesiter_swap 变换操作transformreplacereplace_copy replace_copy_if 算法库提供大量用途的函数(例如查找、排序、计数、操作),它们在元素范围上操…...
CV计算机视觉每日开源代码Paper with code速览-2023.12.6
点击计算机视觉,关注更多CV干货 论文已打包,点击进入—>下载界面 点击加入—>CV计算机视觉交流群 1.【基础网络架构:Transformer】Rejuvenating image-GPT as Strong Visual Representation Learners 论文地址:https://a…...
面试经典150题(1-2)
leetcode 150道题 计划花两个月时候刷完,今天完成了两道(1-2)150: (88. 合并两个有序数组)题目描述: 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 n…...
MySQL使用教程
数据构成了我们日益数字化的社会基础。想象一下,从移动应用和银行系统到搜索引擎,再到如 ChatGPT 这样的先进人工智能聊天机器人,这些工具若没有数据支撑,将寸步难行。你有没有好奇过这些海量数据都存放在哪里呢?答案正…...
微服务学习:Ribbon实现客户端负载均衡,将请求分发到多个服务提供者
Ribbon是Netflix开源的一个基于HTTP和TCP客户端负载均衡器。它主要用于在微服务架构中实现客户端负载均衡,将请求分发到多个服务提供者上,从而实现高可用性和扩展性。 Ribbon的主要特点包括: 客户端负载均衡:Ribbon是一个客户端负…...
孩子还是有一颗网安梦——Bandit通关教程:Level0
🕵️♂️ 专栏《解密游戏-Bandit》 🌐 游戏官网: Bandit游戏 🎮 游戏简介: Bandit游戏专为网络安全初学者设计,通过一系列级别挑战玩家,从Level0开始,逐步学习基础命令行和安全概念…...
读excel文件,借助openpyxl工具
读excel文件,借助openpyxl工具 import osimport requestsos.environ["http_proxy"] "http://127.0.0.1:7890" os.environ["https_proxy"] "http://127.0.0.1:7890"base_url "https://testnet.starscan.io/explore…...
ubuntu16.04升级openssl
Ubuntu16.04 默认带的openssl版本为1.0.2 查看:openssl version 1.下载openssl wget https://www.openssl.org/source/openssl-1.1.1.tar.gz 编译安装 tar xvf openssl-1.1.1.tar.gz cd openssl-1.1.1 ./config make sudo make install sudo ldconfig 删除旧版本 su…...
【力扣100】56.合并区间
添加链接描述 class Solution:def merge(self, intervals: List[List[int]]) -> List[List[int]]:# 队列,每次加进来两个元素:1.不包含:第一个元素出去,并放入result;2.包含:合并nlen(intervals)result…...
重磅!2023中国高校计算机大赛-人工智能创意赛结果出炉
目录 中国计算机大赛-人工智能创意赛现场C4-AI大赛颁奖及留影800个AI应用?这届大学生真能“搞事情”AI原生时代,百度要再培养500万大模型人才 中国计算机大赛-人工智能创意赛现场 12月8日,杭州,一位“白发老人”突然摔倒在地&…...
[Linux] 用LNMP网站框架搭建论坛
一、nginx在其中工作原理 原理: php-fpm.conf是控制php-fpm守护进程 它是php.ini是一个php解析器 工作过程: 1.当客户端通过域名请求访问时,Nginx会找到对应的虚拟主机 2. Nginx将确定请求。 对于静态请求,Nginx会自行处理…...
记录 | 使用samba将ubuntu文件夹映射到windows实现共享文件夹
一、ubuntu配置 1. 安装 samba samba 是在 Linux 和 UNIX 系统上实现 SMB 协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议。 sudo apt-…...
leetcode 股票DP系列 总结篇
121. 买卖股票的最佳时机 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。 只能进行一次交易 很简单,只需边遍历边记录最小值即可。 class Solution { public:int maxProfit(vector<int>& prices) {int res …...
OpenClaw学习助手:Qwen2.5-VL-7B自动解析教材插图
OpenClaw学习助手:Qwen2.5-VL-7B自动解析教材插图 1. 为什么需要AI学习助手 作为一名经常需要阅读大量技术文档的开发者,我发现自己经常陷入"读得快忘得更快"的困境。特别是遇到包含复杂图表和公式的教材时,手动整理关键信息要耗…...
大数据运维--大数据分布式集群
01.运维工程师都有哪些职位?一图胜千言,针对运维工程师在公司都有哪些岗位,我们不妨看看下面这张图2.大数据运维的工作职责 【职责1】规划部署01 根据业务规划和未来业务演进评估集群 规模、存储规模、算力需求、技术选型等。 02 大数据生态组…...
万象视界灵坛部署案例:阿里云ECS GPU实例一键拉起Omni-Vision Sanctuary服务
万象视界灵坛部署案例:阿里云ECS GPU实例一键拉起Omni-Vision Sanctuary服务 1. 项目概述 万象视界灵坛(Omni-Vision Sanctuary)是一款基于OpenAI CLIP技术的高级多模态智能感知平台。这个创新性的解决方案将复杂的视觉识别任务转化为直观、…...
GME-Qwen2-VL-2B效果实测:LaTeX公式截图转代码的准确率与效率
GME-Qwen2-VL-2B效果实测:LaTeX公式截图转代码的准确率与效率 如果你经常需要处理学术论文或者技术文档,肯定遇到过这样的麻烦事:看到一篇PDF或者网页上有个特别复杂的数学公式,想在自己的文档里用,结果发现要么没提供…...
Tao-8k本地部署详解:基于Ubuntu系统的环境配置与优化
Tao-8k本地部署详解:基于Ubuntu系统的环境配置与优化 最近有不少朋友在问,怎么在自己的GPU服务器上把Tao-8k这个大家伙跑起来。说实话,第一次部署的时候我也踩了不少坑,从驱动版本不对到端口被占,各种小问题层出不穷。…...
GLM-4.1V-9B-Base实战教程:批量图片队列处理与异步结果回调机制实现
GLM-4.1V-9B-Base实战教程:批量图片队列处理与异步结果回调机制实现 1. 引言 在实际业务场景中,我们经常需要处理大量图片的分析任务。GLM-4.1V-9B-Base作为一款强大的视觉多模态理解模型,虽然提供了便捷的Web界面,但面对批量图…...
造相-Z-Image代码实例:Streamlit双栏UI自定义参数调节逻辑解析
造相-Z-Image代码实例:Streamlit双栏UI自定义参数调节逻辑解析 1. 项目概述 造相-Z-Image是一个基于通义千问官方Z-Image模型的本地轻量化文生图系统,专门为RTX 4090显卡进行深度优化。该系统采用BF16高精度推理技术,具备显存极致防爆能力&…...
SAP-ABAP:SAP ABAP 经典弹窗函数 POPUP_TO_CONFIRM 完全指南
SAP ABAP 经典弹窗函数 POPUP_TO_CONFIRM 完全指南在SAP开发中,如何优雅地让用户确认“你确定要删除这条数据吗?”——答案就是 POPUP_TO_CONFIRM。在 ABAP 开发的世界里,与用户的交互不仅仅是输入输出。很多时候,我们需要在程序执…...
大学生论文降重技巧:用AI辅助,重复率轻松降到10%以下
2026年AI学术辅助工具已进入“精准合规改写、核心语义完整保留”的全新发展阶段,彻底解决了大学生论文降重“耗时长、改写生硬、易踩学术红线”的普遍难题。据中国高校图书馆协会2026年调研数据显示,超7成大学生在论文写作过程中会遇到重复率超标的问题&…...
医疗AI推理可视化卡顿难题(实时渲染延迟>120ms?)——三甲医院PACS系统C++底层优化全链路拆解
第一章:医疗AI推理可视化卡顿难题的临床影响与性能基线定义在放射科、病理科及急诊超声等实时决策场景中,AI模型输出热力图、分割掩码或病灶定位框后,若前端渲染延迟超过300ms,将直接干扰医师对动态影像序列(如心脏搏动…...
