win10运行YOLOv4+OPENCV+VS2017

方案一.QtGUI+YOLOv4+OPENCV+VS2017

主要参考:https://blog.csdn.net/weixin_42448226/article/details/105752224

下面记录我复现时遇到的一些问题,先说明:这笔记给自己看的,这不是教程

注意:

  1. 如果想要复现上文,所有软件版本最好和作者使用一致,CUDA使用V10.1,,作者上传到github上的项目是基于CUDAV10.1做的,我使用的10.2,后面编译生成的EXE文件依赖cudart64_101.dll 文件,并且编译配置里没找到哪里能修改,这个文件是cuda10.1的库文件
  2. 第四步VS2017配置Qt----注意添加为项目添加QT 路径,详见:https://blog.csdn.net/Accepted_Lam/article/details/80841787?utm_source=blogxgwz3

  3. 如果要为VS2017配置openCV 可以参考这里:https://blog.csdn.net/qq_41915226/article/details/106856587,

  4. 原文这里有误:

  5. 改为:GPU版本:修改属性文件yolov4.prop,"链接器”->"输入"->"附加依赖项"->yolo_cpp_dll.lib 。在"release x64"模式下,菜单栏点击"生成"->"生成解决方案"
  6. 编译Yolov4-QtGUI 时报错  
    H:\Yolov4-QtGUI\QtGuiDemo\QtGuiDemo.vcxproj(47,5): error MSB4019: 未找到导入的项目“H:\Yolov4-QtGUI\config\yolov4_d.props”。请确认  声明中的路径正确,且磁盘上存在该文件。

    原因:编译配置文件QtGuiDemo.vcxproj 里47,48行是用来debug的,而且工程文件配置文件里也没这两个文件,只有52,53的两个文件,所以删除47,48行后保存,编译通过win10运行YOLOv4+OPENCV+VS2017_第1张图片

  7. win10运行YOLOv4+OPENCV+VS2017_第2张图片

最后结果:全部通过,也顺利生成exe文件,不过在我的电脑上运行一会便会自动退出,原因未知,可能还是cuda版本问题

------------------------------------------------------------------分割线---------------------------------------------------------------------------------

最后成功,找到原因因为cuda版本不同,忘记用生成的动态链接库文件替换作者原来的库文件

若自己的cuda版本不是10.1,那么需要将生成的dll和lib文件分别替换到  ./3rdparty/libdarknet/bin/release/gpu   和   ./3rdparty/libdarknet/lib   文件夹下。

结果:

 

方案二:YOLOv4+OPENCV+VS2017

使用opencv实现,先不使用QT,这也可以测试电脑整体环境是否OK

可完全参考:https://blog.csdn.net/qq_41915226/article/details/106856587

其中  2.4 拷贝CUDA文件 这一步可以不需要,一次成功,我的环境如下:

win10运行YOLOv4+OPENCV+VS2017_第3张图片

最后结果如下:

视频测试的结果只有FPS只有3,GPU占用不到一半,可能还是cuda没起作用,或者我这笔记本显卡太老了GTX950M,改天继续研究win10运行YOLOv4+OPENCV+VS2017_第4张图片

你可能感兴趣的:(win10运行YOLOv4+OPENCV+VS2017)