0
点赞
收藏
分享

微信扫一扫

yolo v3环境配置:vs2015+cudn9.1+cudnn7+darknet


yolo v3环境配置:vs2015+cudn9.1+cudnn7+darknet


github 

​​https://github.com/AlexeyAB/darknet​​


要求:


  1. vs2015+opencv3


  2. Windows 和 Linux都可以


  3. CUDA >= 7.5 (cuDNN v5-v7)


预训练模型:


 1 yolov3.cfg 

​​https://pjreddie.com/media/files/yolov3.weights​​


 2 yolov3-tiny.cfg  

​​https://pjreddie.com/media/files/yolov3-tiny.weights​​


  

下载 darknet ​​https://github.com/AlexeyAB/darknet​​

H:\darknet\darknet-master\build\darknet目录下选择相应的 darknet_no_gpu.sln或者 darknet.sln用vs2015打开

先上我的环境配置图吧

下面三张图是我的配置

包含目录

yolo v3环境配置:vs2015+cudn9.1+cudnn7+darknet_无法解析


库目录

yolo v3环境配置:vs2015+cudn9.1+cudnn7+darknet_github_02


附加依赖项

yolo v3环境配置:vs2015+cudn9.1+cudnn7+darknet_无法解析_03


预处理器定义

yolo v3环境配置:vs2015+cudn9.1+cudnn7+darknet_github_04


1 配置opencv

包含目录

D:\opencv330\build\include

D:\opencv330\build\include\opencv

D:\opencv330\build\include\opencv2

库目录

D:\opencv330\build\x64\vc14\lib

链接器->输入

opencv_world330.lib



2 配置第三方包 pthreadVC2

包含目录

H:\darknet\darknet-master\3rdparty\include

库目录

H:\darknet\darknet-master\3rdparty\lib\x64

链接器->输入

pthreadVC2.lib

3 cuda9.1配置

包含目录
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.1\include
库目录
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.1\lib\x64
链接器->输入

cublas.lib;curand.lib;cudart.lib;cudnn.lib;

4 预处理器定义

C/C++ -> 预处理器 -> 预处理器定义

OPENCV;CUDNN;_TIMESPEC_DEFINED;_CRT_SECURE_NO_WARNINGS;_CRT_RAND_S;WIN32;NDEBUG;_CONSOLE;_LIB;



测试

到 H:\darknet\darknet-master\build\darknet\x64 目录下

如果是CPU运行,把darknet_no_gpu.exe重命名成为darknet.exe

这是测试图片文件的

darknet.exe detector test data/coco.data yolov3.cfg yolov3.weights -i 0 -thresh 0.25 dog.jpg  

这是测试视频文件的

darknet.exe detector demo data/coco.data yolov3.cfg yolov3.weights -i 0 -thresh 0.25 test.mp4  


运行结果

yolo v3环境配置:vs2015+cudn9.1+cudnn7+darknet_预处理_05


编译过程报错处理

1 error LNK2001: 无法解析的外部符号 __imp_pthread_join

1>captcha.obj : error LNK2001: 无法解析的外部符号 __imp_pthread_join

1>data.obj : error LNK2001: 无法解析的外部符号 __imp_pthread_mutex_unlock

1>data.obj : error LNK2001: 无法解析的外部符号 __imp_pthread_create

1>data.obj : error LNK2001: 无法解析的外部符号 __imp_pthread_mutex_lock



解决方法:没有配置pthreadVC2,参考上面。

2 error LNK2001: 无法解析的外部符号 cudaPeekAtLastError

1>crop_layer_kernels.cu.obj : error LNK2001: 无法解析的外部符号 cudaPeekAtLastError

1>dropout_layer_kernels.cu.obj : error LNK2001: 无法解析的外部符号 cudaPeekAtLastError

1>maxpool_layer_kernels.cu.obj : error LNK2001: 无法解析的外部符号 cudaPeekAtLastError

解决方法:附加依赖性要加 curand.lib;cudart.lib;

3 无法启动此程序,因为计算机中丢失opencv_world320.dll

解决方法:把 D:\opencv330\build\x64\vc14\bin 目录下的 opencv_world320.dll复制到C:\Windows\System32


参考资料

1 [YOLO v3在Windows下的配置(无GPU)+opencv3.2.0+VS2015]

2 [darknet github](https://github.com/AlexeyAB/darknet)

举报

相关推荐

0 条评论