基於深度學習的計算機視覺開發環境搭建

基於深度學習的計算機視覺開發環境搭建

(Ubuntu16.04+cuda9.0+cuDNN7.4.2+tensorflow-gpu+Keras安裝)

說明:大家搭建開發環境時如果是學習的目的,沒有必要追求安裝操作系統、驅動和軟件的最新版本。一是最新版本可能會有坑要填,二則學習他人的代碼(如Keras和Tensorflow)和最新版本可能會有兼容性問題。具體的cuda和cuDNN安裝的版本要視自己的GPU配置而定。


1. 安裝nvidia驅動

首先去Nvidia官網上查看適合你的GPU的驅動

選擇GPU產品類型(本人用的是NVIDIA TITAN Xp),查找適合的驅動如下圖:

img1.png

找到的驅動版本如下所示:

img2.png

下載NVIDIA驅動安裝包(.run格式)。下載後的文件爲:

/home/bai/Downloads/NVIDIA-Linux-x86_64-410.78.run

注意:這裏的/home/bai是我機子上的路徑;你的具體文件路徑會有不同(下同)

run格式文件安裝較麻煩。

首先要禁用nouveau驅動。Nouveau是由第三方爲NVIDIA顯卡開發的一個開源3D驅動。Ubuntu默認集成了Nouveau驅動。而用戶在安裝NVIDIA官方私有驅動的時候Nouveau又成爲了阻礙。若不禁用Nouveau,安裝時總是報錯。

具體步驟如下:

  • nouveau禁止命令寫入文件

sudo vim /etc/modprobe.d/blacklist.conf

文件末尾添加以下語句:

blacklist nouveau 
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off
  • 調用指令禁止nouveau

echo options nouveau modeset=0 | sudo tee -a /etc/modprobe.d/nouveau-kms.conf
  • 更新內核

sudo update-initramfs -u
  • 重啓系統

sudo reboot
  • 進入tty模式

ctrl + alt+ F1
  • 關閉x server

sudo service lightdm stop 
sudo init 3
  • 切換NVIDIA安裝包指定目錄,賦予權限並進行安裝

cd ~/Downloads
mv NVIDIA-Linux-x86_64-410.78.run nvidia.run
chmod +x nvidia.run
sudo sh nvidia.run --no-opengl-files

備註:no前面是雙槓號

安裝時可能有出錯提示,不用理會,繼續安裝。

安裝成功後,在圖形界面下可以通過命令:

nvidia-settings

查看自己機器上詳細的GPU信息,本人機器的信息如下:

img3.png

執行完上述後,重啓系統:

sudo reboot


2. 安裝CUDA

cuda是nvidia的編程語言平臺,想使用GPU就必須要使用cuda。 下載cuda9.0的安裝文件 。

首先選擇合適的版本。

img4.png

下載安裝文件和補丁文件:

img5.png

下載後的文件如下:

cuda_9.0.176_384.81_linux.run
cuda_9.0.176.1_linux.run
cuda_9.0.176.2_linux.run
cuda_9.0.176.3_linux.run
cuda_9.0.176.4_linux.run

執行如下語句,運行runfile文件:

sudo sh cuda_9.0.176_384.81_linux.run
sudo sh cuda_9.0.176.1_linux.run
sudo sh cuda_9.0.176.2_linux.run
sudo sh cuda_9.0.176.3_linux.run
sudo sh cuda_9.0.176.4_linux.run

因爲Nvidia驅動已經安裝,這裏就不要選擇安裝Nvidia驅動。其餘的都直接默認或者選擇是即可。 使用:

sudo gedit /etc/profile

打開profile文件,在末尾處添加(注意不要有空格,不然會報錯):

export PATH=/usr/local/cuda-9.0/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64$LD_LIBRARY_PATH

重啓電腦:

sudo reboot

測試cuda的Samples

cd /usr/local/cuda-9.0/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery

如果顯示的是有關GPU的信息,則說明安裝成功了。

測試cuda也可以通過命令:nvcc -V 查看。輸出如下圖所示:

img8.png

3. 安裝cuDNN

去官網下載與CUDA 9.0搭配的cudnn版本。下載cudnn需要註冊一個NIVDIA賬號。

https://developer.nvidia.com/rdp/cudnn-download

官方已經給出了cuda與cudnn搭配的建議。

img6.png

我下載的是 cuDNN v7.4.2。在下圖所示選擇cuDNN Library for Linux,下載cudnn-9.0-linux-x64-v7.4.2.24.tgz

img7.png

解壓:

tar -xvf cudnn-9.0-linux-x64-v7.4.2.24.tgz

拷貝相關的庫文件:

sudo cp include/cudnn.h /usr/local/cuda/include/
sudo cp lib64/libcudnn* /usr/local/cuda/lib64/
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

刪除文件原來的軟鏈接:

cd /usr/local/cuda/lib64
sudo rm libcudnn.so libcudnn.so.7              //刪除原來的鏈接
sudo ln -s libcudnn.so.7.4.2 libcudnn.so.7     //生成新的鏈接
sudo ln -s libcudnn.so.7 libcudnn.so
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
sudo ldconfig


4. 安裝Anaconda

Anaconda 是一個用於科學計算的 Python 發行版,支持 Linux, Mac, Windows, 包含了衆多流行的科學計算、數據分析的 Python 包。

  1. 先去官方地址下載好對應的安裝包 Ubuntu - anaconda

  2. 然後安裝anaconda

bash ~/Downloads/Anaconda2-5.3.1-Linux-x86_64.sh

anaconda會自動將環境變量添加到PATH裏面,如果後面你發現輸出conda提示沒有該命令,那麼你需要執行命令source ~/.bashrc 更新環境變量,就可以正常使用了。 如果發現這樣還是沒用,那麼需要添加環境變量。 編輯~/.bashrc 文件,在最後面加上

export PATH=/home/bai/anaconda2/bin:$PATH

保存退出後執行:source ~/.bashrc 再次輸入conda list測試看看,應該沒有問題!

  1. anaconda國內鏡像配置

    清華TUNA提供了 Anaconda 倉庫的鏡像,運行以下命令:

    conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
    conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
    conda config --set show_channel_urls yes

  即可添加 Anaconda Python 免費倉庫。


5. 使用Anaconda安裝 TensorFlow

創建tensorflow環境,環境名字可自己確定,這裏本人使用tfgpu作爲環境名:

conda create -n tfgpu python=3.6

備註:python的版本可自己選擇。這裏的python是安裝在tfgpu環境下,不是Ubuntu自帶的Python 2.7。

安裝成功後激活tfgpu環境:

source activate tfgpu

在所創建的tfgpu環境下安裝tensorflow的gpu版本, 執行命令:

conda install --channel https://conda.anaconda.org/anaconda tensorflow-gpu=1.9.0

備註:所安裝的tensorflow-gpu版本號可自己確定,這裏本人安裝的是1.9.0。


6. 使用Anaconda安裝jupyter notebook和spyder

如果tfgpu環境沒有激活,運行下面的命令來啓用TensorFlow 環境,

source activate tfgpu

運行下面的命令conda install ipython以及conda install jupyter安裝jupyter notebook。

執行命令jupyter notebook,打開一個新的Jupyter Notebook,輸入一行import tensorflow as tf並運行,如果沒有出現任何錯誤,那麼就安裝成功了。

爲了使用TensorFlow,需要在tfgpu環境下安裝spyder:

conda install  spyder

注意: 這裏安裝的jupyter notebook和spyder是安裝在tfgpu環境下,不是Anaconda自帶的jupyter notebook和spyder,這樣它們才能使用TensorFlow。每次使用時,需要先激活tfgpu環境。


7. 安裝缺少的數值計算和數據分析相關包

在tfgpu環境下安裝Anaconda沒有安裝的數值計算和數據分析相關包。這部分的安裝根據所要開發的任務需要來安裝,例如:

conda install keras
conda install  matplotlib
conda install  scikit-learn
conda install  h5py
conda install  pillow
conda install  -c menpo opencv3
conda install  seaborn

此時,開發環境搭建完畢。開發中需要升級時可自行更新版本,如keras的版本等。


有關基於深度學習的計算機視覺技術的學習,可參考課程《基於深度學習的計算機視覺:原理與實踐》。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章