1. 程式人生 > >ubuntu 18.04下搭建FCN Demo測試環境(Tensorflow)

ubuntu 18.04下搭建FCN Demo測試環境(Tensorflow)

    這幾天一直在倒騰FCN Demo的測試環境,現記錄一下,以防自己忘記,也希望我的搭建經歷能夠幫助到其他童鞋。

1、首先我使用的Tensorflow框架,使用的是國外一個大神在GitHub上上傳的一個Demo,GitHub地址是:FCN.tensorflow

2、在下載到Demo後(自己根據GitHub說明,下載了測試資料),我直接將Demo放在Windows下的TensorFlow環境測試,但是測試不通過,會出現“ValueError: Cannot feed value of shape (0,) for Tensor 'input_image:0', which has shape '(?, 200, 200, 3)' ”報錯,我猜測是Windows下的路徑出現了問題,暫時還沒有解決這個問題。由於時間趕就沒有繼續查詢這個問題。

ps:當整個工程在Ubuntu下能跑通的話,直接將其整個工程拷貝至Windows7環境是能執行起來的。

3、為了防止出現其他奇怪的問題,因此我選擇使用Ubuntu環境來測試Demo。在這裡我使用的是虛擬機器(公司電腦沒有顯示卡,就不用雙系統了)。

4、在ubuntu 18.04下搭建Tensorflow環境:

      需要說明的是,搭建虛擬機器的時候記憶體建議大於12G,硬碟大於60G,有兩次就是虛擬機器記憶體和硬碟空間不足導致Demo訓練的時候掛掉了。

      根據官方文件Installing TensorFlow on Ubuntu,在Ubuntu下安裝Tensorflow有多種個方式,分別是:Use pip in a virtual environment (recommended)、Use pip in your system environment、Configure a Docker container、Use pip in Anaconda、Install TensorFlow from source。在這裡我選擇官方推薦的方式Use pip in a virtual environment。在這裡我搭建Python3的環境,Python2.7環境只是命令的不同,步驟並無不同。

     A、確認ubuntu下Python和pip3的版本:
           $ python3 -V
           $ pip3 -V
           如果提示pip3沒有安裝,則需要安裝,並更新至最新版(官方文件註明,pip最低版本為8.1,否則可能會出錯)。
           $ sudo apt-get update   
           $ sudo apt-get install python3-pip 
           $ pip3 install --upgrade pip  # upgrade pip

     B、建立並激活Virtualenv虛擬環境
           $ sudo apt-get install python3-pip python3-dev python-virtualenv   #install these packages
           $ mkdir ~/tensorflow
           $ cd ~/tensorflow
           $ virtualenv --system-site-packages -p python3 venv3
           $ source ~/tensorflow/venv3/bin/activate      # bash, sh, ksh, or zsh
           (venv3) $ pip3 install --upgrade pip  # Within the active virtual environment, upgrade pip

     C、在虛擬環境中安裝TensorFlow並測試安裝是否成功
           (venv3) $ pip3 install tensorflow   # install tensorflow
           (venv3) $ python -c "import tensorflow as tf; print(tf.__version__)"   # test 
            此命令會直接安裝最新版本的tensorflow,如果需要安裝制定版本的,則需要指定版本號如“pip3 install tensorflow==1.7”

     D、解除安裝TensorFlow
           如果需要解除安裝tensorflow,則直接反啟用並刪除資料夾即可
           (venv3) $ deactivate  # stop the virtualenv
           (venv3) $ rm -r ~/tensorflow/venv

5、Tensorflow環境搭建完成以後還需要安裝一些依賴庫:

           (venv3) $ pip3 install matplotlib
           (venv3) $ pip3 install mkl
           (venv3) $ pip3 install numpy
           (venv3) $ pip3 install pillow
           (venv3) $ pip3 install scipy

6、測試FCN Demo

           將下載的FCN工程存放至使用者目錄,在使用者目錄下新建兩個資料夾:Model_zoo/和Data_zoo/MIT_SceneParsing/(FCN.py檔案中19&21行程式碼指定),將imagenet-vgg-verydeep-19.mat檔案放置在Model_zoo/下,ADEChallengeData2016.zip壓縮包解壓在Data_zoo/MIT_SceneParsing/。資料配置完成。直接在在啟用的TensorFlow環境下執行FCN.py即可開始訓練了。

           (venv3) $ python FCN.py

           注:建立資料夾並將資料放置在資料夾下需要在Ubuntu下操作,若在Windows環境下建立資料夾並移動解壓資料會出現ValueError: Cannot feed value of shape (0,) for Tensor 'input_image:0', which has shape '(?, 200, 200, 3)'報錯。

在這裡貼一張正機器在訓練的圖片

        本文內容只是關於如何搭建測試FCN Demo,對於程式碼本身的講解和FCN網路的理解可以參考連結4和5

最後我把整個Demo工程和源資料下載打包上傳到百度雲,有需要的童鞋可以直接下載

連結:https://pan.baidu.com/s/1uJFWwEydA_ilgT9INMHnXg 密碼:zjq7

參考連結: