文章目錄
- 配置環境
- 安裝依賴包
- 安裝CUDA10.0
- 安裝CUDNN
- 安裝OpenCV3.4.6
- 安裝caffe
- 測試caffe是否安裝成功
- 參考
- 相關軟體下載下傳
提示:為友善檔案下載下傳,文末提供CUDA10.0、CUDNN、OpenCV3.4.6、caffe軟體包
配置環境
- 硬體:
- Intel® Core™ i9-9900K CPU @ 3.60GHz × 16
- GeForce RTX 2080 Ti/PCIe/SSE2
- 軟體:Ubuntu18.04.3 LTS + OpenCV3.4.6 + CUDA10.0 + CUDNN
安裝依賴包
-
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
-
sudo apt-get install --no-install-recommends libboost-all-dev
-
sudo apt-get install libopenblas-dev liblapack-dev libatlas-base-dev
-
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
-
sudo apt-get install git cmake build-essential
安裝CUDA10.0
- CUDA官網選擇适合自己系統的版本下載下傳
- 安裝CUDA10.0
- 指令
sudo sh cuda_10.0.130_410.48_linux.run
- 添加環境變量
- 打開 .bashrc檔案
- 添加如下環境
export CUDA_HOME=/usr/local/cuda
export PATH=$PATH: C U D A H O M E / b i n e x p o r t L D L I B R A R Y P A T H = / u s r / l o c a l / c u d a − 10.0 / l i b 64 CUDA_HOME/bin export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64 CUDAHOME/binexportLDLIBRARYPATH=/usr/local/cuda−10.0/lib64{LD_LIBRARY_PATH:》+:${LD_LIBRARY_PATH}}
- 重新整理配置檔案
source ~/.bashrc
- 測試是否安裝成功
-
方法
運作CUDA中例子
- 指令
cd /usr/local/cuda/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
安裝CUDNN
- 官網選擇合适的安裝包下載下傳
- 下載下傳完成後解壓進入檔案夾執行如下指令
sudo cp cuda/include/cudnn.h /usr/local/cuda/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/
sudo chmod a+r /usr/local/cuda/include/cudnn.h
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
- 測試CUDNN是否安裝成功
-
方法
終端檢視CUDNN版本
- 指令
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
安裝OpenCV3.4.6
提示:為加快安裝速度,最好配置apt-get國内鏡像
- 安裝依賴包
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 libtiff5-dev libdc1394-22-dev # 處理圖像
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev liblapacke-dev
sudo apt-get install libxvidcore-dev libx264-dev # 處理視訊
sudo apt-get install libatlas-base-dev gfortran # 優化opencv功能
sudo apt-get install ffmpeg
2.下載下傳OpenCV3.4.6
網站
Github
git clone -b 3.4.6 https://github.com/opencv/opencv
git clone https://github.com/opencv/opencv_contrib
- 建立檔案夾執行如下指令
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release
-D CMAKE_INSTALL_PREFIX=/usr/local/opencv346
-D PYTHON_DEFAULT_EXECUTABLE=$(which python3)
-D WITH_TBB=ON -D WITH_EIGEN=ON …
sudo make(建議使用sudo make -j8(我的電腦是8核,可以根據自己的電腦組態更改,一般使用-j4))
sudo make install
- 配置環境變量
- 在/etc/ld.so.conf.d/下建立opencv.conf檔案
- 輸入 /usr/local/opencv346/lib
sudo ldconfig
sudo gedit /etc/bash.bashrc
- 檔案末尾添加:
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/opencv346/lib/pkgconfig
export PKG_CONFIG_PATH
- 執行指令
source /etc/bash.bashrc
sudo updatedb
安裝caffe
測試caffe是否安裝成功
-
方法
運作caffe中自帶的例子:mnist執行個體
- 操作
- 下載下傳資料集
- 講解
- mnist是一個手寫數字庫,由DL大牛Yan LeCun進行維護。mnist最初用于支票上的手寫數字識别, 現在成了DL的入門練習庫。征對mnist識别的專門模型是Lenet,算是最早的cnn模型了。
- mnist資料訓練樣本為60000張,測試樣本為10000張,每個樣本為28*28大小的黑白圖檔,手寫數字為0-9,是以分為10類。
- 指令
sudo sh data/mnist/get_mnist.sh
-
結果
運作成功後,在 data/mnist/目錄下有四個檔案:
train-images-idx3-ubyte: 訓練集樣本 (9912422 bytes)
train-labels-idx1-ubyte: 訓練集對應标注 (28881 bytes)
t10k-images-idx3-ubyte: 測試集圖檔 (1648877 bytes)
t10k-labels-idx1-ubyte: 測試集對應标注 (4542 bytes)
- 将資料轉換為LMDB格式
-
講解
資料需要轉為LMDB(leveldb)格式才可以使用
- 指令
sudo sh examples/mnist/create_mnist.sh
-
結果
在 examples/mnist/目錄下,生成兩個檔案夾,分别是mnist_train_lmdb和mnist_test_lmdb,裡面存放的data.mdb和lock.mdb,就是我們需要的運作資料。
- 運作
- 指令
sudo time sh examples/mnist/train_lenet.sh
-
結果
CPU運作時候大約13分鐘,GPU運作時間大約4分鐘,GPU+cudnn運作時候大約40秒,精度都為99%左右
參考
https://blog.csdn.net/yhaolpz/article/details/71375762
https://www.cnblogs.com/denny402/p/5075490.html
https://blog.csdn.net/qq_32408773/article/details/84112166
https://blog.csdn.net/gj295983859/article/details/95182810
相關軟體下載下傳
連結: https://pan.baidu.com/s/13N3qRfPznYQY82xUB93NPQ 提取碼: ippn