Win10下Qt配置opencv/libtorch闭坑总结
作者:快盘下载 人气:Win10下Qt配置opencv/libtorch闭坑总结
坑1;Libtorch只能用MSVC编译器直接调用;错误;assert_fail’ was not declared in this scope;
安装Qt时;勾选MSVC部分;同时需要cdb.exe来进行配置。
下载链接
安装时只安装Debugging Tools即可
在Qt菜单栏工具->选项->构建套件(Kits)->MSVC 2017 x64->调式器;添加cdb.exe。如下所示
坑2;不能把QCoreApplication头文件放在最前面不然会出错
C2143:语法错误;缺少“;”;在“*”的前面;
C4430:缺少类型说明符 - 假定为int。注意;C;;不支持默认int
C2334:“{”的前面有意外标记;跳过明显的函数体
测试代码
#include <opencv2/opencv.hpp>
#include <iostream>
#include <torch/script.h>
#include <torch/torch.h>
//不能把它放在前面 不然会出错
#include <QCoreApplication>
using namespace cv;
using namespace std;
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
// 打印libtorch版本
cout << ;LibTorch version : ;
<< TORCH_VERSION_MAJOR << ;.;
<< TORCH_VERSION_MINOR << ;.;
<< TORCH_VERSION_PATCH << endl;
cout << ;PyTorch version: ; << TORCH_VERSION <<endl;
torch::Tensor tensor = torch::rand({2, 3});
std::cout << tensor << std::endl;
//测试是否能使用GPU
if(torch::cuda::is_available()){
cout << ;can use GPU; << endl;
}
else{
cout << ;can not use GPU; << endl;
}
//测试opencv
cv::Mat src = cv::imread(;E:QTimgnoobcv.jpg;);
if(src.empty()){
cout << ;open image faileed ; << endl;
return -1;
}
cv::imshow(;src;, src);
cv::waitKey(0);
return a.exec();
}
测试结果
坑3;libtorch需要C;;14
CONFIG ;= c;;14
坑4;libtorch;需要添加其他命令;才能使用GPU
LIBS ;= -INCLUDE:?warp_size;cuda;at;;YAHXZ
我的pro项目文件配置;release版本、笔记本;
我的pro项目文件配置;台式机;
台式机测试结果
加载全部内容