环境:windows10+ cundn10.0+ cudnn7.6 vs2015编译 opencv3.4.6
据测试cundn10.0+ cudnn7.6和cudn10.0+ cudnn7.3都可以
github:https://github.com/AlexeyAB/darknet
1、vs2015编译darknet
a)、解压后用vs2015打开darknet_V4\build\darknet\darknet.sln;选择为release x64;
b)、配置cudn和opencv环境;包含目录中添加头文件路径
库目录添加Lib路径:
在连接器-输入-附加依赖项中opencv_world346.lib,其他的darknet.sln以添加
之后“生成”-“生成解决方案”即可编译成功如下:在x64文件中会有编译成功的darknet.exe;
c)、测试darknet.exe编译文件
cmd进入darknet.exe中的文件夹
图片测试:
命令行为:darknet.exe detector test cfg/coco.data yolov4.cfg yolov4.weights -ext_output dog.jpg
视频测试:命令行:darknet.exe detector demo cfg/coco.data cfg/yolov4.cfg yolov4.weights 1.avi -out_filename res.avi
摄像头测试:darknet.exe detector demo cfg/coco.data cfg/yolov4.cfg yolov4.weights -c 0
此部分总结:
错误:未找到导入的项目“C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\BuildCustomizations CUDA 10.0.props
需将C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\extras\visual_studio_integration\MSBuildExtensions文件夹中的CUDN10.0相关的考到C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\v140\BuildCustomizations中替换cudn10.1版本的文件;原因是我的电脑安装cudn10.0和cudn10.1所以这里是原来新安装的cudn10.1版本的文件所以导致无法加载darknet.sln工程;
https://blog.csdn.net/lk274857347/article/details/53588049
此方法的缺点需安装vs2015;安装vs2017、vs2019的需安装如下即安装vc140(vs2015的编译器),在打开时选择不升级即可;后续准备用cmake下编译darknet,这样也更可靠更符合未来开源的趋势,毕竟vs2019对cmake的集成已经很成熟了。