文章目录
- 1 个人环境
- 2 准备工作
- 3 Visual Studio 2019 配置 Libtorch 和 OpenCV
- 4 测试
-
- 4.1 Libtorch 测试
- 4.2 OpenCV 测试
1 个人环境
- 操作系统:Windows;
- Visual Studio 2019;
- Cuda版本:10.1(查询命令:
);
nvcc -V
- Libtorch:Release版本(官网下载);
- OpenCV(官网下载);
2 准备工作
- Visual Studio 2019 的安装,请自行查看相关教程;
- CUDA 和 cuDNN的安装,请自行查看相关教程;
3 Visual Studio 2019 配置 Libtorch 和 OpenCV
下载并解压 Libtorch 和 OpenCV,然后将 Libtorch 和 OpenCV 的头文件目录放在包含目录中,库文件放在库目录下。具体操作为:新建项目,在项目的
属性管理器
中选择
Release | x64
,右键添加新的属性表(本文命名为
LibtorchRelease
)。双击新建属性表,开始设置。操作步骤顺序为:
通用属性 -> VC++目录 -> 包含目录、库目录
,在包含目录下添加头文件,库目录下添加库文件,具体为
包含目录:
path: xxx\libtorch\include\torch\csrc\api\include
path: xxx\libtorch\include
path: xxx\opencv\build\include
path: xxx\opencv\build\include\opencv2
库目录:
path: xxx\libtorch\lib
path: xxx\opencv\build\x64\vc15\lib
而后,对链接器选项进行设置:通过
链接器 -> 输入 -> 附加依赖项
添加以下内容
c10.lib
c10_cuda.lib
torch_cpu.lib
torch_cuda.lib
opencv_world454.lib
最后,在
链接器 -> 命令行 -> 其他选项
中添加
- /INCLUDE:[email protected]@at@@YAHXZ
以上便是属性表中的全部配置,完成后,还需对项目进行配置。转至解决方案资源管理器,项目右键点击属性,在
调试 -> 环境
中添加 libtorch 动态库的路径:
- PATH=xxx\libtorch\lib;%PATH%
至此,相关配置全部完成。
4 测试
4.1 Libtorch 测试
检查面板,务必确认为
Release + x64
。新建源文件
main.cpp
进行测试。
#include <torch/torch.h>
#include <torch/script.h>
using namespace std;
using namespace torch;
int main()
{
torch::DeviceType device_type = at::kCPU;
if (torch::cuda::is_available()) {
cout << "cuda availabel!" << endl;
torch::DeviceType device_type = at::kCUDA;
}
else
{
cout << "cpu" << endl;
}
}
4.2 OpenCV 测试
新建源文件
camera.cpp
进行测试。(测试前先选中前文
main.cpp
右键,
属性 -> 配置属性 -> 常规 -> 从生成中排除 -> 是
)
// 打开摄像头样例
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/core/core.hpp>
using namespace cv;
int main()
{
VideoCapture cap(0);
Mat frame;
while (1)
{
cap >> frame;
imshow("调用摄像头", frame);
waitKey(30);
}
return 0;
}
【参考】
- 在Visual Studio中配置基于Libtorch的项目;
- Libtorch的GPU使用问题记录;
- Visual Sudio 2019 + libtorch(Pytorch C++库) 环境配置;
- opencv4.5.4 + VS2022 的开发环境搭建;