资讯

展开

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即可
Win10下Qt配置opencv/libtorch闭坑总结

在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版本、笔记本;

Win10下Qt配置opencv/libtorch闭坑总结

我的pro项目文件配置;台式机;

Win10下Qt配置opencv/libtorch闭坑总结

台式机测试结果

Win10下Qt配置opencv/libtorch闭坑总结

加载全部内容

相关教程
猜你喜欢
用户评论
快盘暂不提供评论功能!