vs2017运行yolov4_Darknet/yolo-VS2017+OPENCV 编译环境配置

准备工作:

安装VS2017要选择

自行查询显卡对应版本  本文使用cuda10.1

要能在Visual Studio中使用上述安装的OpenCV,需要如下两个步骤:

配置相关的环境变量

建立工程要配置相关的属性

1. 配置相关的环境变量

在用户变量和系统变量中的Path变量都添加进opencv安装目录的build中的bin文件夹路径

D:\opencv\opencv\build\x64\vc15\bin

build文件夹只有"x64"文件夹(似乎是只支持64位系统,所以没有“x86”文件夹),加上我是64位系统,所以选择了“x64”。而至于为什么选择“vc15”下的"bin"文件夹,那是根据所使用的VS版本决定的。

Visual Studio 版本OpenCV对应文件夹

VS2008

vc9

VS2010

vc10

VS2012

vc11

VS2013

vc12

VS2014

vc13

VS2015

vc14

VS2017

vc15

OpenCV3.4.2的"x64"只有"vc14"和"vc15",这意味着它只支持VS2015和VS2017。

2. 建立工程要配置相关的属性

新建c++空文件

进入视图->项目管理器

debug x64模式,然后博客上有三种情况

在project右键属性

在debug上右键属性

在debug->Microsoft.cpp.x64.user右键属性

我选择第二种,配置完第4步后,发现以上三种操作效果一样。

包含目录,添加以下路径

在库目录下,添加以下路径

添加依赖项,选择“链接器”中的“输入”, “附加依赖项”

在上述库目录(即\build\x64\vc15\lib)中,可以找到对应的.lib。

如果是在debug模式下,添加opencv_world341d.lib;

若是release模式,则选opencv_world341.lib。它们的文件名相差一个"d",带"d"的表示debug。

不可两个都添加,否则会出现一定的错误,也不可在debug下配置非debug的lib,在release下配置debug的lib,一定要对应使用。若要在release模式下使用,就要再对应地进行配置。

3. 打开图片

报错:无法打开文件“opencv_world340d.dll

重启电脑,新建项目,发现上面添加的路径和依赖都不见了。

重新添加路径和依赖,成功运行程序。

重新打开运行,没问题。

4. YOLOV4

1.打开darknet.sln

平台工具集选择“无升级”

打开后,显示错误 : 项目“D:\...\darknet-master\build\darknet\darknet.vcxproj”配置“Release|x64”的 Designtime 生成失败

将项目改为release x64,同时点击项目,然后重定向解决方案,一定要选择无升级,这样就可以把编译平台停在vs2015。没有报错。

2、 修改配置

常规 – 平台工具集:vs2015(v140)

VC++目录 – 包含目录:

…\opencv\build\include

…\opencv\build\include\opencv

…\opencv\build\include\opencv2

VC++目录 – 库目录:

…\opencv\build\x64\vc14\lib

添加目录…\opencv\build\x64\vc14\lib下库的名字

这里的目录自己生成了错误的目录,幸好发现才改了回来

3、 "CUDAVisualStudioIntegration\extras\visual_studio_integration\MSBuildExtensions"下的文件直接拷贝到“C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\BuildCustomizations”文件夹中。

4、 将…\opencv\build\x64\vc14\bin下的opencv_world330.dll 和opencv_ffmpeg330_64.dll 复制到 \darknet\darknet-master\build\darknet\x64 目录下

5、 右键工程项目,点击重新生成,生成成功

6、 下载yolo_v4 weights: 把它放到darknet\build\darknet\x64下

7、 在darknet\build\darknet\x64下按住shift键,点击鼠标右键选择“在此处打开Powershell 窗口(s)。

在命令行输入 .\darknet detect cfg/yolov4.cfg yolov4.weights data/dog.jpg

你可能感兴趣的:(vs2017运行yolov4)