小白入门做目标检测——环境搭建(二)
第四步 cuda9.0安装
1. 下载
下载地址为:https://developer.nvidia.com/cuda-90-download-archive?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=1604&target_type=runfilelocal
将下面的安装包和补丁全部下载
2. sh安装
g++ 降级 (CUDA9.0只支持gcc-4.8) ubuntu18.04 默认7.3
sudo apt-get install gcc-4.8
sudo apt-get install g++-4.8
ls -l gcc* #进入到/usr/bin目录,调整软连接
sudo mv gcc gcc.bak #备份
sudo ln -s gcc-4.8 gcc #重新链接
ls -l g++*
sudo mv g++ g++.bak
sudo ln -s g++-4.8 g++
gcc -v g++ -v (查看此时版本)
按照上述步骤安装即可
3. 采用SH安装CUDA
sudo sh xxx.run #xx为你下载的文件名,我们下载的都是.run格式
这里开始的时候显示是0%,一直都是0%,按ctrl+c一直跳过即可,跳到100%,完事会问你是不是accept,选择接受,除了安装nvidia driver那个问题选择n外,其他均选择y
这里注意要把安装包和补丁文件均按照此步骤安装
4. 设置环境变量
sudo vim ~/.bashrc #没有vim用gedit也可,为sudo gedit ~/.bashrc
#在打开的文件结尾加上下面这两句话,后保存退出
export PATH=/usr/local/cuda-9.0/bin${PATH:+:$PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
#使环境变量生效
source ~/.bashrc
5. 查看gpu资料
在安装文件夹下的samples/1-utilities/deviceQuery 下运行中端运行
sudo ./deviceQuery
即可查看cuda信息。
第五步 cudnn7.1.4安装
https://developer.nvidia.com/cudnn这是下载链接,需要先注册一个账号,而后找到对应的安装包并下载。
下载完成,去Downloads文件夹下可以看到cudnn-9.0-linux-ppc64le-v7.1.tgz压缩包先解压,然后将其中的内容复制到CUDA安装文件夹里面
sudo cp cuda/targets/ppc64le-linux/include/cudnn.h /usr/local/cuda/include 注意,解压后的文件夹名称为cuda ,将对应文件复制到 /usr/local中的cuda内
sudo cp cuda/targets/ppc64le-linux/lib/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
第六步 darknet安装
到这里就是我们的yolo安装了,按照官网步骤来一般就没问题。
1.下载
打开终端执行下面命令即可下载,没有git装个git就行,不会自行某度
git clone https://github.com/pjreddie/darknet.git
进入darknet目录双击Makefile,修改 Makefile 配置
这里要根据个人配置,首先我们已经装过了cuda和cudnn,按照如下配置,opencv暂时先不修改,后面会有说明
GPU=1
CUDNN=1
arch是根据个人电脑gpu算力进行配置的,比如我的是6.1,代码就将数字改为61,查看GPU算力
ARCH= -gencode arch=compute_61,code=compute_61
nvcc修改为自己的路径
NVCC=/usr/cuda-9.0/bin/nvcc #如果不知道在终端运行locate nvcc即可
在Makefile51行左右,有cuda的安装路径,系统自己存放的cuda文件夹和cuda软链接文件夹的路径,在计算机—usr—local中,一般不需要修改makefile文件夹中的cuda安装路径,默认是与系统实际相匹配的。
修改完之后,在darknet文件夹下打开终端make一下子
sudo make
测试darknet,在darknet文件夹下打开终端输入
./darknet #输出usage: ./darknet <function>即证明安装成功
opencv的情况有点复杂,下期我们单独讲opencv的安装
本期内容有什么问题欢迎大家留言评论,我会及时回复的。