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下载

Index of /files/v3.17

        链接:https://pan.baidu.com/s/1C1n9yHlwR43YOkzoIpeweQ

        提取码:gml3

1.2、opencv安装

下载地址:Releases - OpenCV

opencv-2.4.13.6-vc14

        链接:https://pan.baidu.com/s/1pe6KLeBi9K6jqch9nxGLmw

        提取码:ey9l

1.3、LibTorch下载

        在pytorch官网下载对应的LibTorch。有GPU版CP官网下载对应的LibTorch。有GPU版CPU版、有DEBUG和RELEASE版。下载匹配的对应版本。

        然后解压。

        有include有lib,跟其他库结构差不多。

2、VS配置

        官方和其他很多都是用的cmake,其实vs也能用。新建一个空项目,然后和VS配置opencv一样,把LibTorch的include和lib添加到“包含目录”和“库目录”中就行,还需要在链 接器中加入:

c10.lib
torch_cpu.lib

        一般来说2个cpu上就可足够测试了,以防万一可以把所有lib都加上:

c10.lib
c10_cuda.lib
caffe2_nvrtc.lib
caffe2_module_test_dynamic.lib
clog.lib
dnnl.lib
libprotobuf.lib
libprotobuf-lite.lib
libprotoc.lib
mkldnn.lib
torch.lib
torch_cpu.lib
torch_cuda.lib

还有两个地方需要修改:

        第一项:属性->C/C++ ->常规->SDL检查->否。

        第二项:属性->C/C++ ->语言->符合模式->否。

可选项:

        第三项:配置属性->常规->C++语言标准,设置为C++17。

        第四项:配置属性->调试->环境,设置环境变量,添加bin目录:PATH=libtorch bin path;%PATH%;

        第五项:若缺少宏,属性->C/C++->预处理器->预处理器定义,设置宏。

3、环境测试验证

        引入两个lib文件:c10.lib、torch_cpu.lib。

测试代码

#include<iostream>
#include<torch/script.h>

int main()
{
	torch::Tensor t1 = torch::tensor({ 10,1,2 });
	std::cout << t1[0] << std::endl;
	system("pause");
}

打印如下结果,则为正确:

使用GPU:libtorch c++部署-使用GPU_alex1801的博客-CSDN博客_libtorch 指定gpu

参考文章:

1、pytorch1.3版本转C++ API(libtorch)踩坑记录

pytorch1.3版本转C++ API(libtorch)踩坑记录_ryERO的博客-CSDN博客

  • 0
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jingbo1801

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值