Win10+VS2017+PyTorch(libtorch) C++ 基本应用

win10+ VS2015 + opencv3.4 + libtorch C++平台部署pytorch训练模型(ResNet50为例)(一) 吐血整理 默认已经安装pytorch1.0以上版本,如果没有安装,可以使用如下命令进行安装(CPU版本,若想安装GPU CUDA版本,可以去官网https://pytorch.org/get-started/locally/选择): conda install pytorch torchvision cpuonly -c pytorch 1、安装VS2015 安装VS2015专业版,安装... 阅读详情
0.下载准备
  • 下载安装VS2017或VS2015

  • 下载安装opencv
    可以参考博客:VS2017配置opencv教程 ,该博客中写的很详细

  • 安装cmake
    记得把bin目录添加到环境变量path中,例如我的:E:\SoftEnv\CMake\bin

  • 下载libtorch
    下载地址:PyTorch libtorch ,这个根据自己情况选择下载,因为我自己的是cuda10,并且我选择使用release版本,所以我的选择如下:
    在这里插入图片描述

1.PyTorch模型转换为Torch脚本

PyTorch模型从Python到C ++的旅程由Torch Script实现,Torch Script是PyTorch模型的一种表示,可以由Torch Script编译器理解,编译和序列化。
这里说下通过跟踪转换为Torch脚本方式(示例),创建一个名为TorchScrip.py的脚本,内容如下:

import torch
import torchvision

# An instance of your model.
model = torchvision.models.resnet18()

# An example input you would normally provide to your model's forward() method.
example = torch.rand(1, 3, 224, 224)

# Use torch.jit.trace to generate a torch.jit.ScriptModule via tracing.
traced_script_module = torch.jit.trace(model, example)
traced_script_module.save("model.pt")

然后运行该脚本,会生成一个 model.pt 文件,该文件就是C++需要调用的模型。

2.准备C++测试代码和CMakelists.txt文件

首先,我在E:/PyTorch/libtorch_test路径下创建一个名为Example的文件夹,然后在该文件夹下分别创建C++测试代码(例如:example-app.cpp)和CMakelists.txt文件以及名为build的文件夹。
CMakelists.txt 内容如下:

cmake_minimum_required(VERSION 3.12 FATAL_ERROR)
project(example-app)

find_package(Torch REQUIRED)
find_package(OpenCV REQUIRED)

if(NOT Torch_FOUND)
    message(FATAL_ERROR "Pytorch Not Found!")
endif(NOT Torch_FOUND)

message(STATUS "Pytorch status:")
message(STATUS "    libraries: ${TORCH_LIBRARIES}")

message(STATUS "OpenCV library status:")
message(STATUS "    version: ${OpenCV_VERSION}")
message(STATUS "    libraries: ${OpenCV_LIBS}")
message(STATUS "    include path: ${OpenCV_INCLUDE_DIRS}")


add_executable(example-app example-app.cpp)
target_link_libraries(example-app ${TORCH_LIBRARIES} ${OpenCV_LIBS})
set_property(TARGET example-app PROPERTY CXX_STANDARD 11)

注意该文件里的关键词:example-app和example-app.cpp ,这个example-app.cpp 就是接下来要写的C++测试代码文件名。
C++测试代码文件(example-app.cpp)内容如下:

#include <torch/script.h> // One-stop header.
#include <iostream>
#include <memory>

int main() {
  // Deserialize the ScriptModule from a file using torch::jit::load().
  std::shared_ptr<torch::jit::script::Module> module = torch::jit::load("E:/PyTorch/libtorch_test/Example/model.pt");

  assert(module != nullptr);
  std::cout << "ok\n";
  // Create a vector of inputs.
  std::vector<torch::jit::IValue> inputs;
  inputs.push_back(torch::ones({ 1, 3, 224, 224 }));

  // Execute the model and turn its output into a tensor.
  at::Tensor output = module->forward(inputs).toTensor();

  std::cout << output.slice(/*dim=*/1, /*start=*/0, /*end=*/5) << '\n';
  while (1);
}

Example路径下:
在这里插入图片描述

3.构建应用程序

准备好上述内容之后,先进入到build文件夹下,然后打开cmd终端或powershell终端,输入如下命令并执行:

cmake -DCMAKE_PREFIX_PATH=E:/SoftEnv/OpenCV4.1/opencv/build/x64/vc15/lib;E:/PyTorch/libtorch-win-shared-with-deps-latest/libtorch -DCMAKE_BUILD_TYPE=Release -G "Visual Studio 15 Win64" ..

注意:上面的指令需要根据自己实际配置进行修改,第一个是opencv的路径,第二个是libtorch的路径,第三个是使用的VS版本。我这里下载的是release版本的libtorch,使用的是VS2017,所以参数如上设置,如果使用的是VS2015,则需要将Visual Studio 15 Win64 改为 Visual Studio 14 Win64 ,opencv/build/x64/vc15/bin 改为 opencv/build/x64/vc14/bin。不出错的话应该输出类似下图的内容:
在这里插入图片描述
看下build文件夹下编译的内容:
在这里插入图片描述
然后,右击example-app.vcxproj ,打开方式选择Microsoft Visual Studio 2017 打开程序,改为Release模式:
在这里插入图片描述
接下来进行编译:
在这里插入图片描述
在这里插入图片描述
这时候会发现提示torch.dll找不到问题:
在这里插入图片描述
这时需要到libtorch的lib路径下将torch.dll文件复制到工程Example\build\Release中,然后再执行F5,然后这时又报缺少caffe2.dll文件,接着重复同样的问题,接连报缺少nvToolsExt64_1.dll、caffe2_gpu.dll、c10_cuda.dll文件,开始没办法,只能一一将其复制添加到工程Example\build\Release中,到这里执行F5最终才成功。。
看下Example\build\Release中内容:
在这里插入图片描述
最后看下成功执行的结果:
在这里插入图片描述
最后说一下关于运行测试代码时报dll缺失的问题。如果想避免一条条添加dll文件,可以一次性将libtorch/lib路径下所有的dll都复制一份到工程Example\build\Release中。
另外,看网上还有一种做法,就是把libtorch/lib中的所有dll放到libtorch/bin中,然后把libtorch/bin加到环境变量的path中,这种方法我自己没有尝试过,有兴趣的朋友不妨试一试。

win10 c++通过libtorch调用yolov5模型 配置及使用 环境: windows 10; vs2017; libtorch1.8.1-cuda10.2 opencv3.4.14 cmake 3.20.2 libtorch下载(Release版): gpu版:https://download.pytorch.org/libtorch/cu102/libtorch-win-shared-with-deps-1.8.1%2Bcu102.zip cpu版:https://download.pytorch.org/libtorch/cpu/libtorch-win-shar 阅读详情

相关推荐

win10 VS2019上libtorch库配置过程

本篇讲述了如何获取、配置libtorch库的过程,分享配置过程中遇到的问题及解决办法。

weixin_43339605的博客 1409

【pytorch】在win10 VS2017环境下使用libtorch部署pytorch模型

安装libtorch pytorch的c++接口,PyTorch C ++ API - 也称为LibTorch,能够将pytorch训练的模型在C++环境下进行部署。它可以直接从官网下载得到Start Locally | PyTorch 我的电脑没有GPU,因此计算模式选择CPU,根据下面的下载链接选择debug版或者release版本,下载解压即可。 新建VS2017项目 需要注意的是,这里一定要使用VS2017,因为pytorch中使用了C++14标准,老版本的VS201...

flyconley的博客 1292

libtorch-shared-with-deps-1.3.0+cpu.zip

libtorch1.3 cpu版本 libtorch-shared-with-deps-1.3.0+cpu.zip

安装 PyTorch C++ API libtorch 及一个最小例子

安装 PyTorch C++ API libtorch 及一个最小例子 翻译自:https://pytorch.org/cppdocs/installing.html 我们提供依赖 PyTorch 所需的所有头文件、库和 CMake 配置文件的二进制分发版。我们将此发行版称为 LibTorch,您可以在我们的网站上下载包含最新 LibTorch 发行版的 ZIP 档案。下面是编写一个依赖 LibTorch 并使用torch::TensorPyTorch C++ API 附带的类的最小应用程序的小示例。 安装

weixin_44966641的博客 2610

从数据到特征:基于CAT12的MRI图像预处理实战指南

本文详细介绍了使用CAT12工具进行MRI图像预处理的完整实战流程。从数据获取、环境搭建到核心的AC-PC校正、组织分割、空间标准化与调制,逐步解析如何将原始脑影像数据转化为可用于机器学习的标准化特征图。重点阐述了预处理作为脑影像分析‘生命线’的重要性,并提供了避坑指南与自动化脚本建议,帮助研究者构建高质量的阿尔茨海默症分类模型输入特征。

weixin_29065959的博客 310

DELPHI11 利用Android手机实现条码扫描功能

好了,整个过程全部结束,当然这只是最简单的例子,只是演示一下如何识别条码,更多的条码处理功能,比如优化,提速等需要在后面继续。安装过程中所有提示框全部按OK就可以,直到提示安装成功,那么ZXing库就成功完成了安装。点击红框标识的文件夹图标,将下载的ZXing库文件路径加入进来后,点ADD。第三步:选择下载的ZXing库路径,并按Ctrl + A进行全选,并导入。至此为止,我们的库才算是全部安装完成,可以在DELPHI 中正常引用了。2.打开相机,识别条码,并将条码内容显示在MEMO1中。

1531

在C++部署Pytorch(Libtorch)模型的方法总结(Win10+VS2017)

目录1、准备工作(1)下载准备(2)TorchScript(.pt文件)准备2、配置步骤(1)CMake配置(2)手动在VS配置 1、准备工作 (1)下载准备 下载安装VS2017 安装配置OpenCV 可参考博客:VS2017配置opencv教程(超详细!!!) ,讲的非常详细。 安装配置CMake(对于CMake配置法) 可参考博客:Windows下CMake安装教程 下载Libtorch 下载地址:https://pytorch.org/,根据自己的系统情况来选择下载版本。 注意: (1)有debu

zzz_zzz12138的博客 1万+

iOS马甲包过审实战:如何用5天时间搞定4.3审核(附完整代码混淆方案)

本文提供了一套为期五天的高效实战方案,专门解决iOS应用因重复或抄袭问题而被App Store的4.3条款拒绝的难题。方案涵盖深度分析、代码混淆、资源翻新及环境隔离等系统性步骤,并附有完整的代码混淆示例,旨在帮助开发者在合规框架内重塑应用,显著提升过审成功率。

weixin_29234239的博客 147

Visual Studio 2017 + Anaconda + Windows10 安装Pytorch

Visual Studio 2017 + Anaconda + Windows10 安装Pytorch 引言 由于最近在搞一些强化学习的项目,编程中又需要用到Pytorch,而且我自己比较喜欢使用Visual Studio进行编程,所以钻研了一下怎么在Visual Studio上把Pytorch跑起来,说实话这个过程还挺复杂的,搞了半天才搞定,就想把操作的过程写出来,供大家参考。 前期准备 Vis...

weixin_43915176的博客 8753

Ubuntu下用QEMU模拟运行OpenBMC

在调试过程中,安装了很多依赖库,具体没有记录。关于kvm,也没理清具体有什么作用。本文仅记录,用QEMU成功的将OpenBMC跑起来的过程,做备忘,也供大家参考。

Sunny的博客 1205

SAR动目标检测三剑客:DPCA/ATI/STAP技术选型指南(含2023最新实验数据对比)

本文深入对比了SAR动目标检测三大主流技术DPCA、ATI与STAP的核心原理与性能差异。基于2023年最新实验数据,分析了它们在最小可检测速度、测速精度、计算复杂度及对通道失配敏感度等方面的优劣,并结合海洋监视与城市交通监控等典型场景,提供了具体的技术选型指南与工程落地考量。

m5n6o7的博客 294

libtorch,TenSorRt跨平台编译一二

1. windows软件配置 CUDA,CUDNN,libtorch,opencv,CMake 笔者使用:cuda10.1, cudnn7.6.5, libtorch 1.3.0(cuda10.1) 注意:libtorch版本>1.3.0时,需要支持c++14的编译器编译 2. 输入 模型pt文件(模型文件需要转化,pt->wts),linux下的cmakelist工程文件 详情见yolov3工程 3. cudnn安装 cudnn下载之后不用安装,解压即可。 下载解压缩后,将其文件夹下cnd

爱上coding的博客 2407

QT与Coin3D实现机器人的仿真

前言 Coin3D编程环境配置好后,开始下一步的机器人仿真任务。本文根据在研5轴机器人,完成三维模型生成与机器人的仿真。主要参考博主冯Jungle的博客,在此表示感谢。 ——2021.05.23 环境 Win10:VS2019、QT5.15.2、Coin3D、SolidWorks2016 机器人三维模型生成 目前广泛应用于因特网的VRML ( Virtual Reality Modeling Language,虚拟现实建模语言)为用户提供一种可参与的、并能对场景中对象主动做出反应的虚拟现实环境,现已成

焦露的博客 6908

Win10+vs2017下配置libtorch

我的配置如下: 系统:win10-64位 VS:vs2017 Libtorch:cu102-1.6 安装步骤如下: 一、确定可选版本 C++下实现torch,主要用于网络的预测,而网络的训练则是在python环境下完成。为保证python环境下训练的网络可以正常移植到vs环境中使用,需保证vs环境中使用的torch版本与python中使用的torch版本一致。 另外,关于vs版本,推荐使用vs2017(虽然网上有不少帖子关于vs2015移植torch,但本人在移植过程中,使用vs2015未成功)。 在此,选

xiaohuolong的博客 1606

2026年寒武纪数字IC笔试试卷带答案

本文摘要: 该数字IC设计测试卷包含单选题(30分)、波形分析题(15分)、多选题(30分)三类客观题,覆盖时序约束、半导体工艺、状态机、数制转换、同步复位等核心知识点。重点考察:1)跨时钟域处理(如异步FIFO、格雷码应用);2)时序分析(建立/保持时间、时钟约束指令);3)低功耗设计技术(时钟门控、DVFS);4)寒武纪MLU架构特性(张量核、混合精度计算)。解析强调工程实践要点,如异步复位需同步释放、建立时间违例与频率的关联性等。试题难度梯度明显,既包含基础概念辨析(如Moore/Mealy状态机),

Open 223

DeepSeek-OCR安装部署文档和避坑指南,包含大多数人遇到的安装报错问题

DeepSeek-OCR安装部署指南摘要:本文详细介绍高性能OCR工具DeepSeek-OCR的安装流程,支持多语言识别和复杂场景文字提取。系统要求包括Linux/Windows/macOS操作系统,推荐NVIDIA显卡(显存≥6GB)和≥16GB内存。安装步骤涵盖:1)创建conda虚拟环境;2)安装PyTorch等核心依赖;3)解决常见问题如CUDA版本冲突、模型下载慢等。提供GPU内存不足等问题的解决方案,帮助开发者快速部署OCR服务。(149字)

yolo模型训练找我,AI游戏合作找我 2947

win10上libtorch c++部署

开发环境: VS2017(VS2015亲测也能通过) win10 cmake>=3.0 libtorch1.6-release pytorch中libtorch加入了对C++的支持,以方便集成。但不同系统、开发环境下遇到的问题不同,这里进行整理。此方案为win10+vs下集成代码验证。 1、准备工作 1.1、cmake下载 用vs编译也是可以的,本文选用vs编译。确定有>=3.0版本的cmake和比较高的vs版本。cmake下载。 https://cmake.org/files/

alex1801 2601

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Win10 vs2017配置Libtorch和opencv

win10+vs2017配置Libtorch和OpenCV

Kigha的博客 1165

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Win10 + VS2019 + Qt5 + OpenCV + Libtorch (PyTorch) C++ cmake 基本配置 + 踩坑记录

最近想用 Qt 写一个界面在 C++ 下调用 Pytorch 模型,整个环境配置下来遇到了不少问题,因此记录一下。 1. 下载安装相关文件 由于我的开发环境是 Win10,因此需要下载的东西挺多的,IDE 用的 Visual Studio 2019,在 这里 下载社区版,安装的时候可以选择需要的编译器,我装的是 MSVC v142,cmake 也可以在 vs2019 里直接装,或者自己下载单独的 cmake 安装。 在 cmd 里输入 cmake 以确保能够正常使用,如果不行,需要把 cmake 的 bin

蓝三金的博客 5560

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

LibTorch入门——Win10+VS2017配置LibTorch开发环境。

最近想研究一下如何部署pytorch模型,看到别人说LibTorch不错,是最近流行的C++部署框架,我打算试试。 首先,去pytorch官网上下载,如下图,上面的连接是release版本,下面是Debug版本,支持C++,但是Window不支持Java。点击连接下载下来。我选择的是release版本的。 将解压后的文件复制到C盘,如下图: 设置环境变量: 右键我的电脑->高级系统设置->高级中的环境变量->点击系统变量中的Path->添加dll路径: . .

AI浩 8168

Win10 VS2019 LibTorch环境配置及使用教程

Libtorch环境配置 一.环境配置 VS2019,Libtorch1.6.0 release版本 1.新建VS工程,空项目。 2.将Libtorch库的lib文件夹下的dll都放到bin文件中。 3.在工程中配置,右击工程名: (1)在C/C++目录-常规-附加包含目录中添加:libtorch的include的根目录,libtorch的include文件路径。 (2)在链接器-常规-附加库目录中添加:libtorch的lib文件路径。 (3)在链接器-输入中添加:libtorch的lib文件名称。 (右

骚年阿健的博客 3177

win10系统上LibTorch的安装和使用(cuda10.1版本)

LibTorch的安装和使用LibTorch的安装和使用LibTorch的安装和使用

Major_S的博客 7019

【Libtorch 一】libtorch+win10环境配置

win10平下利用libtorch部署DL模型

wangds000的博客 2519

调用script方法_C++调用pytorch,LibTorch在win10下的vs配置和cmake的配置

最近有个项目需要使用C++调用训练好的模型。刚好pytorch1.0版本的发布,加入了对C++的支持,准备试一试pytorch对C++的支持怎么样。这里是官方文档和教程。https://pytorch.org/docs/master/jit.html​pytorch.orghttps://pytorch.org/tutorials/advanced/cpp_export.html​pytorch....

weixin_30023527的博客 468

windows c++下使用libtorch导入pytorch模型

一.下载libtorch 到官网pytorch官网下载libtorch,选择适合自己版本pytorch官网.下方有相应的下载链接,一个debug版本,一个release版本 目前我是使用的pytorch也是1.4版本,之前网上查阅资料时,有人说下载的libtorch版本要跟pytorch版本一致,不一致的情况我也没试. 本人环境: 系统 :ubuntu16.4 && win10 p...

ZHUYOUKANG的博客 2588
上一篇: Ubuntu 18.04 安装显卡驱动+CUDA10+多版本CUDA+Tensorflow gpu1.13.1
下一篇: Ubuntu安装NCCL
gulingfengze
博客等级 码龄12年 177粉丝 38原创
评论 52
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值