• Darknet版YOLO安装与配置


    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.   
    3. 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重新编译,不报错即可。

  • 相关阅读:
    自己写个pager控件
    再忙也不能忽视的东西
    ACE_Reactor学习2 Reactor类API的功能分类
    ACE_Reactor学习3 ACE_Reactor初始化相关的实现分析
    ACE_Reactor学习1 总体计划
    windows下信号机制的学习
    咋了
    C#编写Window服务
    Javascript引用类型小结,及字符串处理
    .NET调用控制台下生成的exe文件,传参及获取返回参数
  • 原文地址:https://www.cnblogs.com/jimchen1218/p/11804980.html
Copyright © 2020-2023  润新知