Darknet配置和安装

1. 安装显卡驱动

首先查看一下自己的电脑需要怎样的驱动,我们可以先到 http://www.nvidia.com/Download/index.aspx 查询下我们需要的是怎样的驱动,这里我的显卡是 GTX 1080 Ti,所以以此为例说明,勾选好对应的配置:

点击search并下载驱动

打开terminal,卸掉系统原有驱动:

sudo apt-get remove --purge nvidia*

在安装新驱动前,禁用nouveau:

在终端中运行 lsmod | grep nouveau

若没有输出则nouveau已禁用;若有输出则说明nouveau正在运行,需要手动禁用:

sudo vim /etc/modprobe.d/blacklist-nouveau.conf

在该文件尾部输入以下内容:

blacklist nouveau 
options nouveau modeset=0

保存并关闭文件。

在终端中执行:sudo update-initramfs -u

再次运行 lsmod | grep nouveau 检查nouveau是否禁用,若未禁用则重复上述操作。

关闭图形化界面:sudo service lightdm stop

按Ctrl + Alt + F1 进入字符终端页面,

进入驱动所在的目录,运行:

sudo sh 驱动名

安装完之后重启: sudo reboot

打开终端输入命令: nvidia-smi, nvidia-settings查看驱动安装状态:

2. 安装CUDA 9.0

sudo sh cuda_9.0.176_384.81_linux.run

是否Accept EULA:Accpet

Install driver:Yes/No

Install OpenGL:No

Run nvidia_xconfig: No

Install Cuda Toolkit: Yes

Yes

Yes

配置CUDA的环境变量:

sudo gedit ~/.bashrc

在文件尾部输入:

  1. export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
  2. export LD_LIBRARY_PATH=/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH

运行source ~/.bashrc 使其生效

3. 配置 Cudnn

下载Cudnn并解压:

tar -zxvf cudnn-7.0-linux-x64-v3.0-prod.tgz

解压后会看到一个cuda文件夹,里面包含了include以及lib64两个子目录。我们需要做的就是将这两个字母里面的文件复制到cuda对应的安装目录。这里以cuda的安装目录为/usr/local/cuda/,这个目录下也会包含include/以及lib64/这两个文件夹,将之前目录的文件复制过来即可。

sudo cp cuDNN/cuda/include/cudnn.h /usr/local/cuda/include

sudo cp cuDNN/cuda/lib64/* /usr/local/cuda/lib64/

这时候本来已经可以了,但是由于权限的原因原来的两个符号链接文件(libcudnn.so,libcudnn.so.7.0)已经失效了,直接编译便会报错,所以这时手动生成符号链接。

#下面的操作在/usr/local/cuda/lib64/目录下进行

sudo rm -rf libcudnn.so libcudnn.so.7.0#删除两个符号链接;

sudo ln -s libcudnn.so.7.0.64 libcudnn.so.7.0

sudo ln -s libcudnn.so.7.0 libcudnn.so

运行source ~/.bashrc 使其生效

如果出现下面问题:

/sbin/ldconfig.real: /usr/local/cuda/lib64/libcudnn.so.7 is not a symbolic link

则参考如下解决方法,版本需对应安装的cudnn的相应版本(link:https://askubuntu.com/questions/1025928/why-do-i-get-sbin-ldconfig-real-usr-local-cuda-lib64-libcudnn-so-7-is-not-a):

sudo rm libcudnn.so

sudo ln libcudnn.so.7.0.5 libcudnn.so.7

sudo ln libcudnn.so.7 libcudnn.so

sudo ldconfig

Cudnn配置完毕

4.Opencv的安装与配置(Darknet框架需要安装配置opencv,编译darknet环境)

4.1. 安装编译工具、依赖包和可选包:

sudo apt-get update
    sudo apt-get install build-essential #编译工具
    sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev #依赖包
    sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev #可选包

4.2. 在opencv官网下载源码,解压后新建release文件夹并编译opencv环境:

cd opencv-2.4.13.5
    mkdir release
    cd release
    cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
    make -j8 #可根据自己电脑的性能 开启多线程
    sudo make install

4.3. 更新动态链接库

sudo ldconfig

4.4. 测试(命令行中启动python,输入 import cv2 不报错即可)

5.安装Darknet

5.1. 首先将github上的项目克隆到本地:

git clone https://github.com/pjreddie/darknet

5.2. 进入darknet目录构建项目:

cd darknet
make

5.3. 进入darknet文件夹,打开Makefile,将GPU、CUDNN、OPENCV的值改成1,保存并退出。

5.4. 输入make clean 清除之前编译的darkent环境,输入make重新编译,不报错即可。

Darknet版YOLO安装与配置的更多相关文章

  1. Mysql 5.7.12解压版的安装及配置系统编码

    这篇博文是由于上篇EF+MySql博文引发的,上篇博文中在Seed方法中插入中文数据到Mysql数据库中乱码,后来网上找了N种方法也没解决.重装了MySql并在安装过程中配置了系统编码,此篇记录一下. ...

  2. Linux版OpenVPN安装、配置教程(转)

    本文将以目前最新的openvpn-2.3.4.tar.gz(更新于2014-5-2,下载地址)为例来介绍如何在Linux系统中安装.配置及使用OpenVPN. 在这里,我们选用了一台预装CentOS ...

  3. win7 绿色版MySQL安装与配置

    操作步骤: 一.安装MySQL数据库 1.下载MySQL-5.6.17-winx64.zip文件.2.解压到指定目录,本例为D:\mysql-5.6.17-winx64.3.修改配置文件,my-def ...

  4. windows版influxDB安装与配置

    一.下载链接https://portal.influxdata.com/downloads,选windows版 二.解压到安装盘,目录如下 三.修改conf文件,代码如下,直接复制粘贴(1.4.2版本 ...

  5. 绿色版NVM安装与配置详细说明

      绿色版本(不需要安装,直接解压,然后配置环境变量等) 由于最初发布的nvm并不支持window,所以如果希望可以像在*nix上一样控制node的版本,有两种选择: nvm-windows nodi ...

  6. Mysql 5.7 for windows 免安装版(解压版)安装和配置

    网上写的不近详细,这里重新整理下. 准备: 1.windows操作系统 2.mysql 的解压版压缩文件 第一步: 解压mysql的压缩包到你的安装目录,因为是虚拟机,这里我就安装在C盘下:C:\my ...

  7. Apache server for win解压版的安装与配置

    下载地址: Apache 2.4.16 Win64位:VC14:http://www.apachelounge.com/download/VC14/binaries/httpd-2.4.16-win6 ...

  8. solrcloud(solr集群版)安装与配置

    1 Solr集群 1.1 什么是SolrCloud SolrCloud(solr 云)是Solr提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时使用 SolrCloud.当一个系统的 ...

  9. Mac版Java安装与配置

    一.下载并安装JDK http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 双击下载的 ...

随机推荐

  1. Hibernate3核心API-Configuration类

  2. javascript之DOM(Document Object Model) 文档对象模型

    <html> <head> <meta http-equiv="Content-Type" content="text/html; char ...

  3. Unity和Mef的比较

    1:Mef和Untiy都支持依赖注入 2:Mef支持插件的机制 3:Mef在写法上更简单灵活 4:Mef在宏观上比Unity更加庞大 5:Mef不支持Aop的切入拦截,Unity支持

  4. CentOS(Oracle_Linux)系统网卡配置文件参数详解

    Each physical and virtual network device on an Oracle Linux system has an associated configuration f ...

  5. golang实现四种排序(快速,冒泡,插入,选择)

    本文系转载 原文地址: http://www.limerence2017.com/2019/06/29/golang07/ 前面已经介绍golang基本的语法和容器了,这一篇文章用golang实现四种 ...

  6. String与toString

    String与toString能将对象转为字符串: 类型 行为描述 Array 将 Array 的每个元素转换为字符串,并将它们依次连接起来,两个元素之间用英文逗号作为分隔符进行拼接. Boolean ...

  7. Debian10服务器安装

    对于使用惯windows系统的人来说,刚开始接触使用linux系统一定是很不习惯,因为使用环境的变化经常会出现一些错误.当然,对于我来说,我也是刚刚才开始接触Linux,对此,有些地方想不到的,可以多 ...

  8. springboot后端实现条件查询,要配合使用mybatis

    package cn.com.dyg.work.sqlgen; import cn.com.dyg.work.common.exception.DefException; import cn.com. ...

  9. HNU_团队项目_Android和数据库对接出现问题总结

    1. 问题说明:Android发来的数据JSON格式不对,Time和Date的位置相反 出现原因:Android的JSON数据组装时顺序不对(可能) 2.问题说明:Android发来的数据无法插入到数 ...

  10. Leetcode之动态规划(DP)专题-53. 最大子序和(Maximum Subarray)

    Leetcode之动态规划(DP)专题-53. 最大子序和(Maximum Subarray) 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和. ...