VS配置opencv、cuda及调用yolo动态链接库

0、首先依次安装VS2015,cuda,opencv ,并配置环境变量

1、其次分别为VS配置cuda和opencv依赖(Vc++包含目录、库目录,链接器附加依赖,在属性管理器(视图——其他窗口)中的degug/release下的管理员属性表Mycrosoft.Cppx64.user中配置可以自动继承到所有项目中,继承有时候会有些问题新的项目提示找不到lib,最好还是保存属性表,临时加载。只继承少数oprncv344.lib和opencv344d.lib。其他的6个lib文件设置到一个属性表里去临时添加给项目)

  • VS配置cuda

Vc++ 包含目录
$(CUDA_PATH_V10_0)include
C:ProgramDataNVIDIA CorporationCUDA Samplesv10.0commoninc

Vc++库目录
 $(CUDA_PATH_V10_0)lib$(Platform)
C:ProgramDataNVIDIA CorporationCUDA Samplesv10.0commonlibx64

链接器-输入-附加依赖项
cublas.lib
cuda.lib
cudadevrt.lib
cudart.lib
cudart_static.lib
OpenCL.lib

最后根据英伟达官网更改VS中配置显卡的计算能力,cuda c/c++——device ——code generation — compute_75,sm_75

  • VS配置opencv

Vc++ 包含目录
D:opencvuildinclude
D:opencvuildincludeopencv
D:opencvuildincludeopencv2

Vc++库目录
D:opencvuildx64vc14lib

链接器-输入-附加依赖项
opencv_world344.lib
opencv_world344d.lib

 

2、下面项目调用dll时环境必须和生成dll的时环境模式相同,要么都是debug要么都是release
下面yolo的两种运行方式:

2.0、windows shell(cmd)

     0. 编译(标题栏——生成——生成darknet(U)) darknet.sln得到:

darknet.exe

  1. 记得加载权重到附近,有了exe文件即可。

2.1、调用动态链接库实现(dll)

     0、编译(项目上右键——生成) yolo_cpp.dll.sln得到: yolo_cpp.dll.dll和yolo_cpp.dll.lib

     1、新建空白文件(保证模式与dll导出模式相同),添加main文件,并将cfg文件,weights文件,类别文件,训练/测试图片集拷到main文件附近
     2、将此项目的动态依赖库yolo_cpp_dll.dll,pthreadGC2.dll,pthreadVC2.dll拷到附近;将此项目需要的链接库yolo_cpp_dll.lib添加到输入链接器依赖(或者直接在程序中pragma引入),项目上右键生成依赖项——生成自定义——勾选cuda
     3、将yolo_cpp_dll.sln下的hpp文件拷到main文件附近 (右键——查看代码(txt)——另存).
 

原文地址:https://www.cnblogs.com/Henry-ZHAO/p/12725255.html