前言
基于YOLO进行物体检测、对象识别,先和大家分享如何搭建开发环境,会分为CPU版本、GPU版本的两种开发环境,本文会分别详细地介绍搭建环境的过程。
主要使用TensorFlow1.15、opencv-python3.4.0、keras2.1.5、Pillow、matplotlib 等依赖库。‘
GPU版本:TensorFlow1.15、cudnn7.6.5、cudatoolkit10.0
目录
前言
搭建环境参数
一、安装TensorFlow
1、YOLO开发环境——CPU版本
2、YOLO开发环境——GPU版本
3)测试环境
二、安装YOLO经常用到的依赖库
搭建环境参数
系统:Ubuntu系统 Python版本:Python 3.5 或以上 深度学习框架:TensorFlow 1.x
说明:1)关于Ubuntu系统推荐Ubuntu16或以上的,原来系统自带的Python 3.5;
2)Python 的版本可以是3.5,或是更高版本;
在ubuntu16(Python 3.5.2、pip 20.2.4)中演示搭建开发环境
一、安装TensorFlow
大家先选择一下,是安装CPU环境,还是GPU环境,建议尽量安装GPU环境,这样做YOLO的物体检测、目标识别时会更快和流畅。先看下是否符合GPU环境的要求:
GPU 前提条件:电脑中有显卡,NVIDIA品牌;如果电脑没显卡,或不想使用GPU加速的朋友,可以跳过布置GPU加速环境
首先升级pip3,通常pip3对应python3(这里是python3.5),pip对应python2;
pip3 install --upgrade pip -i https://pypi.mirrors.ustc.edu.cn/simple --user
注意:1) -i 的用途是指定软件源去升级pip3,可以选择清华源:https://pypi.mirrors.ustc.edu.cn/simple 也可以选择阿里云: -i https://mirrors.aliyun.com/pypi/simple/ 实际使用中那个更快选择那个。
2) --user 可选,目的是给权限;
1、YOLO开发环境——CPU版本
1)安装TensorFlow1.15.0
pip3 install tensorflow==1.15.0 -i https://mirrors.aliyun.com/pypi/simple/ --user
等待安装完成
2)验证是否环境安装成功
进入Python环境:
python3
输入命令导入TensorFlow库:import tensorflow as tf
查看其版本:tf.__version__
如果成功导入,返回 tensorflow的版本号,说明安装成功。
2、YOLO开发环境——GPU版本
前提条件:电脑中有显卡,NVIDIA品牌;
1)安装GPU版的TensorFlow1.15.0
pip3 install tensorflow-gpu==1.15.0 -i https://mirrors.aliyun.com/pypi/simple/ --user
这里等待安装完成即可;
这里看到成功安装 tensorflow-gpu==1.15.0后;但是需要注意红色字,说tensorflow-gpu==1.15.0 需要 setuptools 版本大于41.0.0,当前系统版本为20.7.0;那简单,直接升级安装setuptools>=41.0.0就可以了;
pip3 install setuptools==41.6.0 -i https://mirrors.aliyun.com/pypi/simple/ --user
使用命令查询pip3安装了哪些库:
2)安装 cudatoolkit 10.0
首先在CUDA Toolkit Archive网页找到 CUDA Toolkit 10.0 地址:https://developer.nvidia.com/CUDA-TOOLKIT-ARCHIVE
选择对应的系统参数,下载CUDA Toolkit 10.0文件:
首先将.deb安装包下载到本地。然后使用ctrl+alt+F1进入终端,使用如下命令关掉图形用户界面:
sudo service lightdm stop
然后卸载所有之前安装的nvidia驱动以及cuda相关文件:
sudo apt remove --purge nvidia*sudo apt remove --purge cuda*
执行上图蓝色框框中的第一条dpkg命令
sudo dpkg -i cuda-repo-ubuntu1604-10-0-local-10.0.130-410.48_1.0-1_amd64.deb
执行完之后,在路径 /etc/apt/sources.list.d 下会生成一个cuda-10-0-local-10.0.130-410.48.list 文件,使用cat命令查看该文件:
$ cat cuda-10-0-local-10.0.130-410.48.list
deb file:///var/cuda-repo-10-0-local-10.0.130-410.48 /
sources.list.d/文件夹下据说是用来存放第三方安装源。比如刚才我们执行dpkg命令,实际上就是新建了一个本地安装源,安装源就存放在生成的。
可以看到,本地cuda仓库被放到了 /var/cuda-repo-10-0-local-10.0.130-410.48 /
现在,执行第二条dpkg命令
官方:sudo apt-key add /var/cuda-repo-<version>/7fa2af80.pub
实际执行:
sudo apt-key add /var/cuda-repo-10-0-local-10.0.130-410.48/7fa2af80.pub
再执行第三条和第四条dpkg命令
sudo apt-get updatesudo apt-get install cuda
安装成功后,执行 nvidia-smi 看到有NVIDIA的驱动了;
没问题的话应该会弹出GPU的相关信息,最后再打开图形桌面:
sudo service lightdm start
安装完成后,添加环境变量,打开 bashrc 文件,
命令行输入: sudo gedit ~/.bashrc ,然后在文件最后添加下面3行,保存退出
export CUDA_HOME=/usr/local/cuda
export PATH=$PATH:$CUDA_HOME/bin
export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
然后刷新下环境变量,输入:source ~/.bashrc
测试下CUDA是否安装成功,输入 nvcc -V ,显示如下,说明没问题
3)安装cudnn7.6.5
1、安装cuDNN 7.6.5版本,转到官网 https://developer.nvidia.com/rdp/cudnn-archive
选择cuDNN 7.6.5,
下载4个文件:
按照以下操作进行,
cp cudnn-10.0-linux-x64-v7.6.5.32.solitairetheme8 cudnn-10.0-linux-x64-v7.6.5.32.tgz
2、解压 cuDNN Library for Linux,输入: tar -zxvf cudnn-10.0-linux-x64-v7.6.5.32.tgz
将解压出来的文件复制到安装的CUDA环境中,输入: sudo cp cuda/include/cudnn.h /usr/local/cuda/inlude
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
更改权限,输入: sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
3、安装 Deb 包
依次输入: sudo dpkg -i libcudnn7_7.6.5.32-1+cuda10.0_amd64.deb
sudo dpkg -i libcudnn7-dev_7.6.5.32-1+cuda10.0_amd64.deb
sudo dpkg -i libcudnn7-doc_7.6.5.32-1+cuda10.0_amd64.deb
4、安装结束后,重启系统,再测试一下安装是否成功,
输入: cp -r /usr/src/cudnn_samples_v7/ ./
cd ./cudnn_samples_v7/mnistCUDNN
make clean && make
./mnistCUDNN
出现Test passed!没有报错即安装成功
4)验证是否环境安装成功
进入Python环境:
python3
输入命令导入TensorFlow库:import tensorflow as tf
查看其版本:tf.__version__
3)测试环境
新建一个python文件,编写测试程序:
import tensorflow as tf
tensorflow_version = tf.__version__
#以下两行代码适合有“布置GPU环境的”
gpu_available = tf.test.is_gpu_available()
print("tensorflow version:", tensorflow_version, "\tGPU available:", gpu_available)
#以下一行代码适合没有“布置GPU环境的”,纯CPU版本的
#print("tensorflow version:", tensorflow_version)
a = tf.constant([1.0, 2.0], name="a")
b = tf.constant([1.0, 2.0], name="b")
result = tf.add(a, b, name="add")
print(result)
能看到GPU版的TensorFlow开发环境搭建成功了。
二、安装YOLO经常用到的依赖库
主要安装opencv-python3.4.0、keras2.1.5、Pillow、matplotlib
pip3 install opencv-python==3.4.11.41 -i https://mirrors.aliyun.com/pypi/simple/ --user
pip3 install keras==2.1.5 -i https://mirrors.aliyun.com/pypi/simple/ --user
pip3 install Pillow -i https://mirrors.aliyun.com/pypi/simple/ --user
pip3 install matplotlib -i https://mirrors.aliyun.com/pypi/simple/ --user
完成(●ˇ∀ˇ●)
评论(0)