这次用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. WM_CONCAT和LISTAGG 语法例子

    select to_char(replace(wm_concat(name), ',', '')) from codeitems where setid = 'A018' and ' like cod ...

  2. power shell 常用查询-查看操作系统信息

    https://technet.microsoft.com/en-us/library/dd367892.aspx 首推使用 Get-Counter 该函数下可以把现有的电脑监控统计数据 直接提取出来 ...

  3. ELK之消息队列选择redis_kafka_rabbitmq

    前言描述 生产初级,Service服务较少,访问量较少,随着业务量的不断增加,日志量成倍增长,然后就遇到了消息队列redis被充爆,不能满足应用的情况.针对此情况,我们来分析下可用的消息多列. 官方推 ...

  4. poi中如何自定义日期格式

    1. poi的“Quick Guide”中提供了 “How to create date cells ”例子来说明如何创建日期单元格,代码如下: HSSFCellStyle cellStyle = w ...

  5. 一个由于springboot自动配置所产生的问题的解决

    由于我的项目里面需要使用到solr,我做了一下solr和springboot的整合,结果启动项目的时候,就报错了...报错的信息的第一行提示如下: org.springframework.beans. ...

  6. cxf 动态调用.

    import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;import org.apache ...

  7. 详细理解servlet实现的三种方式和生命周期

    阅读目录 开发servlet的三种方式 理解实现servlet接口的方式,理解servlet生命周期 Servlet接口有五个方法 继承GenericServlet 继承HttpServlet 现在很 ...

  8. Python之Numpy数组拼接,组合,连接

    转自:https://www.douban.com/note/518335786/?type=like ============改变数组的维度==================已知reshape函数 ...

  9. mysql列类型char,varchar,text,tinytext,mediumtext,longtext的比较与选择

    储存不区分大小写的字符数据 TINYTEXT 最大长度是 255 (2^8 – 1) 个字符. TEXT 最大长度是 65535 (2^16 – 1) 个字符. MEDIUMTEXT 最大长度是 16 ...

  10. Java 泛型类型基础

    为什么要使用泛型? 未使用泛型的情况: // 创建列表类 List list = new ArrayList(); // 添加一个类型为 String 的列表元素 list.add("hel ...