惠普 暗影精灵 Win10 darknet Yolov3 vs2015 opencv 配置

2023-10-25 07:50

本文主要是介绍惠普 暗影精灵 Win10 darknet Yolov3 vs2015 opencv 配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

    寒假运行目标检测代码,同事推荐Yolo,只能网上查询如何配置环境,主要参考的是作者“我是马克思小清新”的Win10+darknet+vs2015 GPU和CPU版本的配置(原文链接在此),在此感谢,然后一些细节地方也再完善一下。

    笔记本是惠普的暗影精灵,GPU是Nvidia的GTX 1070 with max-Q,当时也是为了跑深度学习买的,这次刚好用起来。

1、准备的安装包

    (1)VS2015社区版,免费,微软官网一般可以找到资源,网上搜到的百度云链接:https://pan.baidu.com/s/1iTp9HW1vS7c8dVPg16Y9xg 密码:q3yz(原文链接在此,感谢“乘风.xs”);

    (2)Opencv3.4.6,可以官网下载,但是比较慢,网上搜到的百度云链接:https://pan.baidu.com/s/1Th0XTriymMXF1cpJGMAHuw  提取码:3kpi (原文链接在此);

    (3)CUDA10.1和cuDNN7.6.5,可以官网下载,但是网站进去就很慢,也是网上搜的百度云链接:(CUDA10.1)https://pan.baidu.com/s/1BKZ7Q1vtZumW6MWmwIvbwA   提取码:pwt2,(cuDNN)https://pan.baidu.com/s/1gu-SUmtAMGVNArUgIqJaKg  提取码:l583(原文链接在此,感谢“空眠”);

    (4)darknet,这个可以下载大佬已经编译好的版本,省去自己操作一番的功夫。https://github.com/AlexeyAB/darknet;

    (5)yolov3_weights,权重文件,网上搜到的百度云链接:https://pan.baidu.com/s/1hMeSwO_Td16q9fgWsNb2eg  提取码:f8g2 (原文链接在此,感谢“是否龙磊磊真的一无所有”)。

2、安装过程

    (1)安装VS2015

    此处引用“意疏”中的文字(原文链接在此),重点看黑色部分:“对于其安装过程https://blog.csdn.net/guxiaonuan/article/details/73775519?locationNum=2&fps=1这篇文章里已经做了详细的介绍,但是在自定义安装是至少应选择Visual C++和Visual Studio 2015 Update 3,其它就看心情,看喜好勾。我在VS2015的安装上没有遇到什么问题,所以也没有什么好说的。”

 (备注:在安装的时候可能提示有javascript什么找不到安装源,这个可以直接跳过,不安装,目前来说没看到什么影响)。

 

    (2)安装opencv3.4.6

    将下载后opencv-3.4.6-vc14_vc15.exe文件双击解压到指定的目录,我的是d:\opencv目录,解压后的目录如下图所示。

    

    解压缩完后,需要配置环境变量,将目录“D:\opencv\build\x64\vc14\bin”加入环境变量,不然之后VS2015配置opencv会找不到opencv_world346.dll文件。

    

    (3)在VS2015中配置opencv3.4.6

    首先在VS2015中创建一个新的空项目Opencv-test。切换属性管理器窗口,这个在视图-->其它窗口-->属性管理器中也有,但是可以直接在项目窗口的下方就有。接着打开Debug|X64下User的属性。

      

    配置主要是三个部分:包含目录,库目录,附加依赖项 

    包含目录:build文件下的include,include/opencv,include /opencv2加入进来。

    库目录:build->x64->vc14->lib加进来

    附加依赖项:opencv_world346d.lib,大家就写debug版本的吧,因为我看到网上有人将两个lib加进来报错了,我这里没有报错,不知是什么原因。
    

    

    

    点击应用确定,opencv在VS 2015中就配置好了,如果出现找不到opencv_world346d.dll的问题,可能是你没有配opencv 的环境变量。注意:出现这个问题,然后配环境变量之后,一定要重启vs2015才可以编译通过,不然就一直报错找不到dll文件。

    现在建立一个main.cpp测试一下能不能用,尤其需要注意的是文件目录必须使用双斜杠,“D:\\123.jpg”。

#include <opencv2/opencv.hpp>
#include <iostream>using namespace cv;int main() {//读取图片文件Mat src = imread("D:\\123.jpg");if (src.empty()) {printf("文件不存在。。。");getchar();return -1;}//创建一个窗口namedWindow("src", CV_WINDOW_AUTOSIZE);//在窗口中显示图片imshow("src", src);waitKey(0);printf("0000");return 0;
}

    (4)安装CUDA和cuDNN

    傻瓜式安装,这里安装的位置就是默认位置,没有自定义,最好不要自己定义文件位置吧,防止后面搭建darknet出现找不到cuda文件的错误,cuDNN 解压缩后,将bin,include,lib下的文件复制到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1各自对应的文件夹下,注意是各个目录的文件复制过去,不是文件夹

      这个也要配置环境变量

     

     

    最后在命令提示符下看看是否安装成功

    

3、在VS2015中生成CPU版本的darknet_no_gpu.exe

    这个比较简单,不需要修改什么文件,只需要将d:\opencv\build\x64\vc14\bin下的三个dll文件放到darknet\build\darknet\x64下,这样才能用opencv的库展示图片。

    接着打开no_gpu版本的解决方案 “darknet_no_gpu.sln”,在vs2015的Release x64下重新生成该项目,生成成功之后在x64文件下就多了一个darknet_no_gpu.exe执行文件。

    接着进入x64文件中找到darknet_yolo_v3.cmd,右键编辑文件,这里可以使用记事本或者NotePad++软件打开。

    里面的exe文件默认的是darknet.exe,改成darknet_no_gpu.exe,保存文件。 

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

    保存完毕后双击darknet_yolo_v3.cmd文件,会弹出命令框。

    

4、在VS2015中生成darknet.exe,也就是gpu版本的

    在打开项目之前,将darknet.vcxproj中的cuda版本换成自己装好的版本,我的是10.1,右键用记事本打开darknet.vcxproj,查找有11.1的地方,好像有2个,都改成10.1保存即可。

    

这些做好之后再重新生成项目。然后在X64的文件下也多了darknet.exe文件。

接着在darknet_yolo_v3.cmd中将exe换成darknet.exe其他的不变。保存关闭执行。GPU这边会提示compute_capability和cudnn_half。

需要注意的是,在编译过程中,可能会提示出错:nvcc fatal : Unsupported gpu architecture 'compute_86',通过网上查找资料,找到了修改办法(原文链接在此,感谢“基益生”),解决方法:
右击项目–>属性–>CUDA C/C++ -->Device,看到Code Generation为:compute_35,sm_35,compute_86,sm_86,我是把带86的全部都删掉,就可以编译成功了。
 

 

 

 

 

这篇关于惠普 暗影精灵 Win10 darknet Yolov3 vs2015 opencv 配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/281085

相关文章

SpringBoot3.4配置校验新特性的用法详解

《SpringBoot3.4配置校验新特性的用法详解》SpringBoot3.4对配置校验支持进行了全面升级,这篇文章为大家详细介绍了一下它们的具体使用,文中的示例代码讲解详细,感兴趣的小伙伴可以参考... 目录基本用法示例定义配置类配置 application.yml注入使用嵌套对象与集合元素深度校验开发

IntelliJ IDEA 中配置 Spring MVC 环境的详细步骤及问题解决

《IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决》:本文主要介绍IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决,本文分步骤结合实例给大... 目录步骤 1:创建 Maven Web 项目步骤 2:添加 Spring MVC 依赖1、保存后执行2、将新的依赖

SpringBoot基于配置实现短信服务策略的动态切换

《SpringBoot基于配置实现短信服务策略的动态切换》这篇文章主要为大家详细介绍了SpringBoot在接入多个短信服务商(如阿里云、腾讯云、华为云)后,如何根据配置或环境切换使用不同的服务商,需... 目录目标功能示例配置(application.yml)配置类绑定短信发送策略接口示例:阿里云 & 腾

如何为Yarn配置国内源的详细教程

《如何为Yarn配置国内源的详细教程》在使用Yarn进行项目开发时,由于网络原因,直接使用官方源可能会导致下载速度慢或连接失败,配置国内源可以显著提高包的下载速度和稳定性,本文将详细介绍如何为Yarn... 目录一、查询当前使用的镜像源二、设置国内源1. 设置为淘宝镜像源2. 设置为其他国内源三、还原为官方

CentOS7更改默认SSH端口与配置指南

《CentOS7更改默认SSH端口与配置指南》SSH是Linux服务器远程管理的核心工具,其默认监听端口为22,由于端口22众所周知,这也使得服务器容易受到自动化扫描和暴力破解攻击,本文将系统性地介绍... 目录引言为什么要更改 SSH 默认端口?步骤详解:如何更改 Centos 7 的 SSH 默认端口1

Maven的使用和配置国内源的保姆级教程

《Maven的使用和配置国内源的保姆级教程》Maven是⼀个项目管理工具,基于POM(ProjectObjectModel,项目对象模型)的概念,Maven可以通过一小段描述信息来管理项目的构建,报告... 目录1. 什么是Maven?2.创建⼀个Maven项目3.Maven 核心功能4.使用Maven H

SpringBoot多数据源配置完整指南

《SpringBoot多数据源配置完整指南》在复杂的企业应用中,经常需要连接多个数据库,SpringBoot提供了灵活的多数据源配置方式,以下是详细的实现方案,需要的朋友可以参考下... 目录一、基础多数据源配置1. 添加依赖2. 配置多个数据源3. 配置数据源Bean二、JPA多数据源配置1. 配置主数据

Spring 基于XML配置 bean管理 Bean-IOC的方法

《Spring基于XML配置bean管理Bean-IOC的方法》:本文主要介绍Spring基于XML配置bean管理Bean-IOC的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一... 目录一. spring学习的核心内容二. 基于 XML 配置 bean1. 通过类型来获取 bean2. 通过

如何使用Nginx配置将80端口重定向到443端口

《如何使用Nginx配置将80端口重定向到443端口》这篇文章主要为大家详细介绍了如何将Nginx配置为将HTTP(80端口)请求重定向到HTTPS(443端口),文中的示例代码讲解详细,有需要的小伙... 目录1. 创建或编辑Nginx配置文件2. 配置HTTP重定向到HTTPS3. 配置HTTPS服务器

SpringBoot中配置Redis连接池的完整指南

《SpringBoot中配置Redis连接池的完整指南》这篇文章主要为大家详细介绍了SpringBoot中配置Redis连接池的完整指南,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以... 目录一、添加依赖二、配置 Redis 连接池三、测试 Redis 操作四、完整示例代码(一)pom.