• ubuntu18.04安装opencv+CUDA10.2+cuDNN+YOLOv3


    安装顺序:

    • Opencv
    • 显卡驱动
    • CUDA10.2
    • cuDnn
    • YOLOv3

    1、Opencv3.2.0安装

    搭建依赖环境

    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
    

     下载Opencv3.2并安装

    wget -O opencv.zip https://github.com/Itseez/opencv/archive/3.2.0.zip  
    unzip opencv.zip
    

    此时会生成一个opencv3.2.0文件夹

    cd opencv-3.2.0
    

    然后创建一个文件夹

    mkdir build
    cd build
    cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
    make -j4
    make install
    

    执行cmake时,如果卡在了Downloading ippicv_linux_20151201.tgz,可以下载linux_20151201.tgz,

    下载地址:https://pan.baidu.com/s/170j3x9zjMyWA6H9k7icpXQ 提取码: wcg3

    然后放在opencv-3.2.0/3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32a7666804320e目录下。

    重新执行以下命令cmake命令:

    cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -DWITH_IPP=OFF ..
    

     cmake通过后,再执行

    make -j4
    make install
    

     设置路径

    sudo vim /etc/ld.so.conf.d/opencv.conf
    

    在文件中添加/usr/local/lib

    保存后执行:

    sudo ldconfig
    

     配置环境变量

    sudo vim /etc/bash.bashrc
    

     文件末尾添加:

    PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig  
    export PKG_CONFIG_PATH  
    

    2、显卡驱动安装

    禁用默认驱动

    Ubuntu系统集成的显卡驱动程序是nouveau,它是第三方为NVIDIA开发的开源驱动,需要先将其屏蔽才能安装NVIDIA官方驱动。将驱动添加到黑名单blacklist.conf中,但是由于该文件的属性不允许修改,所以需要先修改文件属性。

    查看属性

    sudo ls -lh /etc/modprobe.d/blacklist.conf
    

     修改属性

    sudo chmod 666 /etc/modprobe.d/blacklist.conf
    

    用vim打开

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

     在该文件后添加以下几行:

    blacklist vga16fb
    blacklist nouveau
    blacklist rivafb
    blacklist rivatv
    blacklist nvidiafb
    

    安装显卡驱动

    执行命令:

    ubuntu-drivers devices
    

     

    从这里可以看到,系统推荐我安装435或440版本驱动,我选择安装440版本。

    #删除其它驱动
    sudo apt-get remove --purge nvidia*
    #增加源
    sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt-get update

     然后安装显卡驱动:

    sudo apt-get install nvidia-driver-440
    

     安装成功后重启电脑。

    执行命令
    nvidia-smi
    

     如果出现如果显卡列表界面,这显卡驱动安装成功。

    CUDA10.2安装

    注意:安装低版本的CUDA,需要对GCC进行降级

    进入:https://developer.nvidia.com/cuda-toolkit-archive

     点击CUDA Toolkit10.2后,如图选择:

      CUDA官网会给出下载和安装方法,根据官网提示,执行:

    wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-ubuntu1804.pin
    sudo mv cuda-ubuntu1804.pin /etc/apt/preferences.d/cuda-repository-pin-600
    wget http://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda-repo-ubuntu1804-10-2-local-10.2.89-440.33.01_1.0-1_amd64.deb
    sudo dpkg -i cuda-repo-ubuntu1804-10-2-local-10.2.89-440.33.01_1.0-1_amd64.deb
    sudo apt-key add /var/cuda-repo-10-2-local-10.2.89-440.33.01/7fa2af80.pub
    sudo apt-get update
    sudo apt-get -y install cuda
    

     设置环境变量

    sudo vim ~/.bashrc
    export PATH=/usr/local/cuda-10.2/bin${PATH:+:${PATH}}
    export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
    

     使环境变量生效

    source ~/.bashrc
    

     执行:

    nvcc -V
    

     

     出现CUDA版本信息时,说明CUDA安装成功。

    CUDNN安装

    进入:https://developer.nvidia.com/rdp/cudnn-download

    注册账号并登陆,选择“Download cuDNN v7.6.5 (November 18th, 2019), for CUDA 10.2”

    然后下载“cuDNN Library for Linux”,下载完成后解压tgz文件,得到一个cuda文件夹:

    tar -xzvf cudnn-10.2-linux-x64-v7.6.5.32.tgz
    

     然后复制文件:

    sudo cp cuda/include/cudnn.h    /usr/local/cuda-10.2/include  
    sudo cp cuda/lib64/libcudnn*    /usr/local/cuda-10.2/lib64
    sudo chmod a+r /usr/local/cuda/include/cudnn.h   /usr/local/cuda/lib64/libcudnn*
    

     验证安装结果:

    cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
    

     

    出现如图界面,说明CUDNN安装成功。

    YOLOV3安装

    git clone https://github.com/AlexeyAB/darknet
    cd darknet

     vim编辑Makefile

    vim Makefil
    

     

     将GPU、CUDNN、OPENCV的值改为1,然后执行:

    make
    

     编译完成后,测试一下效果吧

    参考网址:

    • https://blog.csdn.net/gzj_1101/article/details/78651650
    • https://blog.csdn.net/rgd888/article/details/91047780
    • https://blog.csdn.net/xiaokan_001/article/details/88126122
    • https://blog.csdn.net/debjiu/article/details/80824439
    • https://blog.csdn.net/phinoo/article/details/82999337
  • 相关阅读:
    (3)Smali系列学习之Smali语法详解
    (2.1)Smali系列学习之基础语法
    (2.0)Smali系列学习之Smali语法
    Why NHibernate updates DB on commit of read-only transaction
    用LinqPad查看Nhibernate生成的sql语句
    Oracle中Clob类型处理解析
    时间线插件
    深入理解OAuth2.0协议
    项目经理问:为什么总是只有我在加班–挂包袱现象
    Nhibernate Case SUM
  • 原文地址:https://www.cnblogs.com/codeit/p/13391069.html
Copyright © 2020-2023  润新知