【Libtorch】YOLOV5在Window10的部署(一)

YOLOV5在Window10的部署(一)

前言

大家好,这是我的第一篇文章,以前都是在本站白嫖大佬们的文章,现在有机会,也分享一下自己的工作经历。本文禁止转载。

部署环境

本文是在 Windows10系统下,使用 Libtorch-yolov5(yolov5的C++版本), Opencv4.5.2,Libtorch1.8.0

  1. VS2019
  2. Libtorch1.8.0
  3. Opencv4.5.2
  4. Libtorch-yolov5
  5. Cmake
  6. Window10

第一步:安装和下载

前言:将以下的文件下载好后,最好统一放到一个文件夹内,方便使用。

【Libtorch】YOLOV5在Window10的部署(一)

; 1:下载安装VS2019

下载地址:https://visualstudio.microsoft.com/zh-hans/vs/

2:下载Libtorch1.8.0。

各种版本的libtorch下载地址:https://blog.csdn.net/weixin_43742643/article/details/115218126
:Libtorch的版本必须和你训练使用的虚拟环境中的 pytorch版本一致。下载之前先去你的虚拟环境中查看Pytorch版本。
(1) 选择对应的版本
(2) 选择 Release or Debug (我用的Debug)
(3) 选择 CPU or CUDA(GPU) (本人笔记本太垃圾,用的CPU)

【Libtorch】YOLOV5在Window10的部署(一)
【Libtorch】YOLOV5在Window10的部署(一)

; 3:下载Opencv

Opencv下载地址:https://opencv.org/releases/

【Libtorch】YOLOV5在Window10的部署(一)
下载好的Opencv文件夹内容
【Libtorch】YOLOV5在Window10的部署(一)

; 4:下载Libtorch-Yolov5

下载地址:https://github.com/yasenh/libtorch-yolov5

下载好的Libtorch_yolov5_master

【Libtorch】YOLOV5在Window10的部署(一)

; 5:下载Cmake

下载地址:https://cmake.org/download/

【Libtorch】YOLOV5在Window10的部署(一)
下载安装成功后,win+r cmd进入命令窗口 输入 cmake 出现下面就是安装成功。
【Libtorch】YOLOV5在Window10的部署(一)

; 第二步:配置环境

主要是在VS2019上面配置Libtorch 和 Opencv

1: 配置Opencv 和 Libtorch

打开VS2019 创建一个新项目

【Libtorch】YOLOV5在Window10的部署(一)
这里选择C++ 和 空项目
【Libtorch】YOLOV5在Window10的部署(一)
【Libtorch】YOLOV5在Window10的部署(一)
项目名称是yolov5,放在和下载文件的同一个目录下
【Libtorch】YOLOV5在Window10的部署(一)
创建完成后,右键->属性
【Libtorch】YOLOV5在Window10的部署(一)
VC++目录 -> 包含目录
Opencv:
D:\YoloV5_libtorch\yolov501\opencv\build\include
D:\YoloV5_libtorch\yolov501\opencv\build\include\opencv2

Libtorch:
D:\YoloV5_libtorch\yolov501\libtorch\include
D:\YoloV5_libtorch\yolov501\libtorch\include\torch\csrc\api\include

【Libtorch】YOLOV5在Window10的部署(一)
VC++目录 -> 库目录
Opencv:
D:\YoloV5_libtorch\yolov501\opencv\build\x64\vc15\lib

Libtorch:
D:\YoloV5_libtorch\yolov501\libtorch\lib

【Libtorch】YOLOV5在Window10的部署(一)
链接器-> 输入-> 附加依赖项
【Libtorch】YOLOV5在Window10的部署(一)
Opencv: 将D:\YoloV5_libtorch\yolov501\opencv\build\x64\vc15\lib文件中的.lib文件放入 附加依赖项里面
opencv_world452d.lib(Debug)
opencv_world452.lib(Release)
【Libtorch】YOLOV5在Window10的部署(一)
Libtorch: 将D:\YoloV5_libtorch\yolov501\libtorch\lib中的.lib文件全部放入 附加依赖项里面
c10.lib
c10d.lib
torch.lib
asmjit.lib
caffe2_detectron_ops.lib
caffe2_module_test_dynamic.lib
clog.lib
cpuinfo.lib
dnnl.lib
fbgemm.lib
fbjni.lib
gloo.lib
libprotobufd.lib
libprotobuf-lited.lib
libprotocd.lib
mkldnn.lib
pthreadpool.lib
pytorch_jni.lib
torch_cpu.lib
XNNPACK.lib
【Libtorch】YOLOV5在Window10的部署(一)
调试 -> 环境
D:\yolov501\libtorch\lib;
D:\yolov501\opencv\build\x64\vc15\lib;
【Libtorch】YOLOV5在Window10的部署(一)
C/C++ -> 语言 -> 符合模式 改为否
【Libtorch】YOLOV5在Window10的部署(一)
C/C++ -> 常规 -> SDL检查 改为否
【Libtorch】YOLOV5在Window10的部署(一)

; 2: 测试 Opencv和 Libtorch

Opencv测试:源文件下新建main.cpp 将下面测试代码复制粘贴,运行即可。

【Libtorch】YOLOV5在Window10的部署(一)

【Libtorch】YOLOV5在Window10的部署(一)
#include
#include
using namespace cv;
using namespace std;

string name = "";

int main()
{
    VideoCapture capture;
    capture.open(0);

    if (!capture.isOpened())
    {
        cout << "can not open";
        cin.get();
        return -1;
    }

    namedWindow(name);

    while (1) {
        Mat cap;
        capture >> cap;
        if (!cap.empty())
            imshow(name, cap);
        else
            cout << "can not ";
        waitKey(30);
    }

    return 0;
}

成功显示

【Libtorch】YOLOV5在Window10的部署(一)
Libtorch测试:同上opencv测试 直接把opencv代码删除贴上下面测试代码即可。
#include
#include
int main() {
    std::cout << "cuda::is_available():" << torch::cuda::is_available() << std::endl;
    torch::Tensor tensor = torch::rand({ 3, 4 });
    std::cout << tensor << std::endl;
}

出现的问题

一般都是环境配置的问题,只要重新配置你的环境,一般都能成功。当然有时候很麻烦,坚持一下就好了。

Original: https://blog.csdn.net/weixin_39931579/article/details/119862099
Author: 私はいつも好きです樱岛麻衣
Title: 【Libtorch】YOLOV5在Window10的部署(一)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/687932/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球