这次用yolov2做检测时遇到个大坑,折腾了我好几天,特以此文记录之。

一、安装cuda+cudnn

它们的版本必须要匹配,否则训练后检测不出目标!

1、下载cuda8.0.61_375.26_linux.run和cudnn-8.0-linux-x64-v5.1.tgz

2、安装cuda

sh cuda8.0.61_375.26_linux.run

一直enter,直至accept。然后是安装一些东西直接y,或者让你输入地址,

按enter用默认的就可以了。

3、环境变量设置

sudo gedit ~/.bashrc

在其末尾添加:

     export CUDA_HOME=/usr/local/cuda-8.0

    export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH

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

       
   保存,刷新:source ~/.bashrc

    4、动态链接设置

创建文件:sudo gedit /etc/ld.so.conf.d/cuda.conf

写入:/usr/local/cuda/lib64

保存:sudo ldconfig -v

装好后,可用nvcc --version查看cuda版本

5、安装cudnn

如果之前安装了cudnn,可删除之:

    cd usr/local/cuda/lib64
    sudo rm libcudnn*
解压:
tar -zxvf cudnn-8.0-linux-x64-v5.1.tgz
cd ../lib64
sudo cp lib* /usr/local/cuda/lib64/
cd cuda/include
sudo cp cudnn.h /usr/local/cuda/include/
更新软连接:
cd /usr/local/cuda/lib64/ sudo rm -rf libcudnn.so libcudnn.so.5 sudo ln -s libcudnn.so.5.1.10 libcudnn.so.5 sudo ln -s libcudnn.so.5 libcudnn.so 更新:sudo ldconfig

参考:http://blog.csdn.net/jhszh418762259/article/details/52958287?locationNum=8&fps=1

http://www.cnblogs.com/denny402/p/5067265.html

http://www.jianshu.com/p/3c06b2a6b9df

二、yolov2安装测试

yolov2官网:https://pjreddie.com/darknet/yolo/

官网上有些安装步骤说的不是很清楚,所以很容易遇到坑。

1、darknet安装:git clone https://github.com/pjreddie/darknet.git

不要忘了修改makefile和nvcc!

GPU,cudnn,opencv设为1

nvcc=/usr/local/cuda-8.0/bin/nvcc

然后用make指令编译

2、下载voc数据集

用作者给的指令下载没有成功,手动下载即可。

在scripts里面转换格式:python voc_label.py

生成train文件:cat 2007_* 2012_train.txt > train.txt

在cfg/voc.data中修改训练数据路径

3、下载预训练模型

作者提供了很多其训练好的模型

4、自己训练voc数据

./darknet detector train ./cfg/voc.data ./cfg/yolo-voc.cfg

5、测试下迭代效果,比如6000次

./darknet detector test cfg/voc.data cfg/yolo-voc.cfg backup/yolo-voc_6000.weights data/dog.jpg

参考:http://blog.csdn.net/samylee/article/details/53414108

http://blog.csdn.net/u014540717/article/details/53411948

这个论坛中,作者会亲自解答yolov2:https://groups.google.com/forum/#!forum/darknet

yolov2在CUDA8.0+cudnn8.0下安装、训练、检测经历的更多相关文章

  1. 简单实现Ubuntu16.04 + caffe2 + CUDA9.0 + cuDNN8.0

    在Ubuntu16.04 CUDA9.0 cuDNN8.0的环境下安装caffe2 本博客比较简单,cuda9.0 cudnn8.0部分请看上一篇博客,其中详细讲了: 如何安装驱动 安装cuda 安装 ...

  2. caffe+GPU︱AWS.G2+Ubuntu14.04+GPU+CUDA8.0+cudnn8.0

    国服亚马逊的GPU实例G2.2xlarge的python+caffe的安装过程,被虐- 一周才装出来- BVLC/caffe的在AWS安装的官方教程github: https://github.com ...

  3. Permission denied:multiarray.cp35-win_amd64.pyd(tensorflow0.12.0在windows下安装)

    今天在windows下安装tensorflow0.12.0. 碰到一个奇怪的问题.Permission denied:multiarray.cp35-win_amd64.pyd 就是复制文件,一直复制 ...

  4. dotnet core 2.0在ubuntu下安装失败

    在ubuntu下安装.net core2.0失败了,不知道是什么原因.按照微软官方的步骤.似乎走不通.偶然翻到debian的安装方法,发现debian系统居然是直接下载包安装的.没经过apt.尝试一把 ...

  5. openSmile-2.3.0在Linux下安装

    我这边官网下载的特别慢,提供一下云盘下载安装包: 链接:http://pan.baidu.com/s/1sl2YGbz 密码:p1vj windows下的我也下载了 链接:http://pan.bai ...

  6. 2018最新win10 安装tensorflow1.4(GPU/CPU)+cuda8.0+cudnn8.0-v6 + keras 安装CUDA失败 导入tensorflow失败报错问题解决

    原文作者:aircraft 原文链接:https://www.cnblogs.com/DOMLX/p/9747019.html 基本开发环境搭建 1. Microsoft Windows 版本 关于W ...

  7. QWT6.0.1+win7下安装说明

    A) 简介 1.QWT是一个基于LGPL版权协议的开源项目, 可生成各种统计图.它为具有技术专业背景的程序提供GUI组件和一组实用类,其目标是以基于2D方式的窗体部件来显示数据, 数据源以数值,数组或 ...

  8. OpenCV 1.0在VC6下安装与配置(附测试程序)

    步骤: 1 安装Visual C++ 6.0         2 安装OpenCV 1.0        3 配置Windows环境变量         4 配置Visual C++ 6.0     ...

  9. 手把手0基础Centos下安装与部署paddleOcr 教程

    !!!以下内容为作者原创,首发于个人博客园&掘金平台.未经原作者同意与许可,任何人.任何组织不得以任何形式转载.原创不易,如果对您的问题提供了些许帮助,希望得到您的点赞支持. 0.paddle ...

随机推荐

  1. Java中String直接赋字符串和new String的区别 如String str=new String("a")和String str = "a"有什么区别?

    百度的面试官问 String A="ABC"; String B=new String("ABC"); 这两个值,A,B 是否相等,如果都往HashSet里面放 ...

  2. SP4487 GSS6 - Can you answer these queries VI

    题目大意 给出一个由N个整数组成的序列A,你需要应用M个操作: I p x 在 p  处插入插入一个元素 x D p 删除 p 处的一个元素 R p x 修改 p 处元素的值为 x Q l r 查询一 ...

  3. hdu 2586 How far away ?(LCA - Tarjan算法 离线 模板题)

    How far away ? Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)To ...

  4. GNU Emacs命令速查表

    GNU Emacs命令速查表 第一章  Emacs的基本概念 表1-1:Emacs编辑器的主模式 模式 功能 基本模式(fundamental mode) 默认模式,无特殊行为 文本模式(text m ...

  5. 内置函数zip()

    zip有拉链的意思,zip函数像拉链一样将0个或多个可迭代对象按相同位置组合成一个zip对象,该zip对象的每个元素是由每个可迭代对象的相同位置的元素组成的元祖. 如果zip中有多个序列,而各序列的长 ...

  6. 一、spring boot 1.5.4入门(web+freemarker)

    1.配置maven文件pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmln ...

  7. bug找到吐的赶脚

    bug找到吐的赶脚,真**刺激 一.单元测试 设计思路 首先是需要写一个无括号四则运算函数 下面的运算先是运算括号内的数 然后将null后置 全部代码测试,覆盖率92.4% 二.结构优化 uml图 流 ...

  8. QeePHP View视图的默认变量与新增变量

    新版本的QeePHP(V13.1)中,视图页面已经默认添加了几个常用变量 $_app; //控制器所属的应用程序 $_login_user;  //登陆用户信息 直接在视图页面直接使用变量即可. 如果 ...

  9. Flink流处理操作符

    一.工程创建与准备 使用maven进行工程创建,且采用提供的flink-quickstart模版,便利很多.

  10. javascript中的this到底指什么?

    来自百度知道解释 JavaScript:this是什么? 定义:this是包含它的函数作为方法被调用时所属的对象.说明:这句话有点咬嘴,但一个多余的字也没有,定义非常准确,我们可以分3部分来理解它!1 ...