Darknet安装:从CUDA到Opencv

一:CUDA以及Cudnn安装

参考链接:

https://www.jianshu.com/p/e22866b72f43
https://blog.csdn.net/fdqw_sph/article/details/78745375

1.cuda安装

  • 首先,到Nvidia官网下载需要的的cuda版本:https://developer.nvidia.com/cuda-toolkit-archive
    GTX1060显卡,此次下载:cuda_9.0.176_384.81_linux.run

  • 将 .run文件放到home目录,在 ~ 终端运行:sudo sh cuda_9.0.176_384.81_linux.run

  • 安装过程,当出现‘是否为NVIDIA安装驱动nvidia-384?’的英文时,选择‘否’,NO;
    其余选项,都选择yes或者默认

  • 配置环境变量,运行如下命令打开profile文件

sudo gedit /etc/profile

打开文件后在文件末尾添加路径,也就是安装目录,命令如下:

export PATH=/usr/local/cuda-9.0/bin:$PATH

export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64$LD_LIBRARY_PATH

保存,然后重启电脑

sudo reboot

测试CUDA的例子

cd /usr/local/cuda-9.0/samples/1_Utilities/deviceQuery

sudo make

./deviceQuery

如果显示的是关于GPU的信息,则说明安装成功了。

2.cudnn安装

  • 首先下载cudnn:https://developer.nvidia.com/cudnn
    这里使用:cudnn-9.0-linux-x64-v7.5.1.10.tgz

  • 解压:tar zxvf cudnn-9.0-linux-x64-v7.5.1.10.tgz

  • 进入解压后的cudnn-9.0-linux-x64-v7.0.tgz文件cuda,在终端执行下面的指令安装:

tar -zxvf cudnn-9.0-linux-x64-v7.0.tgz
cd cuda
sudo cp lib64/lib* /usr/local/cuda/lib64/
sudo cp include/cudnn.h /usr/local/cuda/include/

  • 然后更新网络连接:

cd /usr/local/cuda/lib64/
sudo chmod +r libcudnn.so.7.0.3 # 自己查看.so的版本 ,home下执行ls cuda/lib64/
sudo ln -sf libcudnn.so.7.0.3. libcudnn.so.7
sudo ln -sf libcudnn.so.7 libcudnn.so
sudo ldconfig

最后执行:
sudo service lightdm start

二.Opencv安装

注:首先确认anaconda base没有安装opencv.建议anaconda base不安装任何东西,并且不要改变默认python!
参考链接:

https://blog.csdn.net/qq_36362060/article/details/80739573
https://blog.csdn.net/li_wen01/article/details/71641408
https://blog.csdn.net/weixin_41143397/article/details/82707551 修改opencv文件参考
https://blog.csdn.net/yudiemiaomiao/article/details/72780790 重要参考

重要的是,GTK+2.x要先于OpenCV安装.否则最后执行darknet测试调用opencv,会出现下面错误代码:
在这里插入图片描述
所以,一些opencv依赖库的安装就很重要了!

1. 首先安装OpenCV的依赖文件,在终端运行下面命令:

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

直接用下面这个完整的:

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 
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get install libxvidcore-dev libx264-dev 
sudo apt-get install libatlas-base-dev gfortran 
sudo apt-get install ffmpeg  

处理成可执行文件!!!!

2.下载并安装opencv

下载地址 https://opencv.org/releases.html

下载3.2.0,source , 直接下载代码:

wget https://github.com/opencv/opencv/archive/3.2.0.zip

不用下载contrib!!!用不上呢.

安装:

1.修改opencv里面的相关文件:

  • 进入到opencv/cmake 目录下,找到OpenCVDetectCUDA.cmake文件并打开,定位到21行,修改set(HAVE_CUDA 1)为set(HAVE_CUDA 0)
    在这里插入图片描述

  • 进入到opencv 目录下,找到CMakeList.txt文件并打开,定位到176,177行,将ON改为OFF
    两个on都要改变为off
    在这里插入图片描述
    2.安装

  • 在opencv目录下新建build文件夹:

cd build    #进入到build文件夹
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..    #开始编译
make -j8   #八核
sudo make install -j8

执行完上面的命令就完成了opencv的安装,执行下面的命令测试是否安装成功,如果不出现报错信息就说明安装成功。

python
import cv2

3.darknet安装和配置

https://www.jianshu.com/p/813342202837
可以直接复制的修改!

其他过程错误,具体问题具体解决!!


当时的记录:
sudo cp /usr/local/cuda-7.0/lib64/libcudart.so.7.0 /usr/local/lib/libcudart.so.7.0 && sudo ldconfig
sudo cp /usr/local/cuda-7.0/lib64/libcublas.so.7.0 /usr/local/lib/libcublas.so.7.0 && sudo ldconfig
sudo cp /usr/local/cuda-7.0/lib64/libcurand.so.7.0 /usr/local/lib/libcurand.so.7.0 && sudo ldconfig

yolov3配置 从cuda开始写
1.cuda
2.cudnn
3.darknet配置
4.makefile修改 https://www.jianshu.com/p/813342202837
5.问题解决,一些库的复制 https://www.jianshu.com/p/de8a6f23ed49 https://blog.csdn.net/bufengzj/article/details/87917606 没有sudo ldconfig , 记得加上才会生效!!!

6.核心存储问题 https://blog.csdn.net/csdn_zhishui/article/details/83751944

7.ocv https://blog.csdn.net/qq_36362060/article/details/80739573

8.opencv make 错误解决
https://blog.51cto.com/8764888/2299520?source=dra

make出现


/usr/bin/ld: 找不到 -lippicv
collect2: error: ld returned *********1 exit status
Makefile:83: recipe for target ‘libdarknet.so’ failed


解决方法 https://blog.csdn.net/kaka20080622/article/details/51075608

https://blog.csdn.net/u014797226/article/details/78429936 opencv 以后 测试出现的问题解决

https://blog.csdn.net/weixin_41143397/article/details/82707551 配置makefile

在这里插入图片描述
解决办法:
① 在etc目录下找到ld.so.conf文件
sudo gedit /etc/ld.so.conf
在文件中加上一行 /usr/loacal/lib(其实就是opencv的安装路径)
在这里插入图片描述
再运行sudo ldconfig,

② 修改bash.bashrc文件,sudo gedit /etc/bash.bashrc
在文件末尾加入:
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH

然后输入命令:source /etc/bash.bashrc
就可以正常运行了。
在这里插入图片描述

后记:

一些运行指令:

  • 单张图片检测:
    权重下载: cd进入darknet文件夹,执行 wget https://pjreddie.com/media/files/yolov3.weights

    执行任务:./darknet detect cfg/yolo.cfg weights/yolo.weights data/dog.jpg

  • 测试摄像头/视频
    摄像头:
    ./darknet detector demo cfg/coco.data cfg/yolov3.cfg yolov3.weights

  • 通过视频文件进行测试
    ./darknet detector demo cfg/coco.data cfg/yolov3.cfg yolov3.weights

./darknet detector demo cfg/coco.data cfg/yolov3.cfg yolov3.weights /home/adminpc/jiaopan/test.mp4

YOLOv3使用教程,包含图片视频

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值