前往
大廳
主題

87也要用Mask RCNN訓練自己的資料集(1)安裝設定篇

[BOT]OTAKU | 2021-05-05 01:49:43 | 巴幣 102 | 人氣 1346

壹. 前言

為了偷懶,所以試著用當紅的深度學習人工智慧來幫我做事情,現在寫這個當備忘與回顧,看看我如何把人工智慧變成工人智慧。
本文對於進階使用者沒啥屁用,主要是個人備忘,怕哪天推倒重練的時候忘光光,還有讓剛入門的人趕快放棄。
本文的內容百分之九十九點九九都是四處抄來的,然後改到能動為止,所以不要問我原理是什麼因為我也不懂;概念就像駕車一樣,人會開車不用會造車,能開不出事就好。
我寫這篇的時候很想穿插髒話,正在考慮是否鎖一下閱覽分級。

廢話不多說我們幹話繼續來。
這篇備忘主要是要告訴我自己是怎麼在Windows 10 64bit下透過Anaconda設定好一套基於Keras和Tensorflow的Mask-RCNN做影像辨識。在此要先有一個最重要的認知:

不要什麼都安裝最新版,安裝最多人用的那個才穩

否則怎麼翻車怎死的都不知道。

設定流程大概是這樣:
1. 安裝Anaconda
2. 安裝Cuda、Cudnn
3. 安裝Visual Studio
4. 下載Mask-RCNN-master
5. 開環境來用
6. 安裝Tensorflow、Keras與其他套件包
六個步驟,聽起來很簡單,哼哼,簡單。

貳. 硬體

主機不要太爛應該都行,筆者曾見過高手用只有內顯的小筆電拚了(非遠端連線,本機作業喔),佩服佩服,那是神的境界我們不要學他,電腦不要用太扯弱爆的來折磨自己,以之前的使用經驗來看,i7-3770和16GB RAM之流能稱順暢了。我自己是跟礦爸凹了一組i9-10900和32GB的記憶體啦,這時候不薛他們更待何時?

基本上正常人都會選顯示卡來做硬體加速,然而(乖寶寶語)礦工還有疫情還有諸多原因,買到顯卡的難度跟中樂透有得一搏。如果經費很充足,那往VRAM大的顯示卡砸就對了,什麼RTX3090 、Quadro RTXA4000、RTX A6000、Quadro RTX8000 Passive之類的,賣腎GG捏著買下去不會後悔......也可能會後悔,總之又大又快的VRAM很重要。

我自己是收了一張二手GTX1070Ti來用,請注意NV顯示卡等級與對應的Cuda和Cudnn版本,錯了翻車我也沒輒了。歐還有,AMD家的顯卡使用的是ROCm,我沒用過不知道,請按下上一頁,這篇廢文沒用了。

參、一步一腳印

1. Anaconda3
下載Anaconda,我自己安裝的是Anaconda3 2020.11,沒試過其他版本行不行,個人認為應該都沒差,不要拿太扯的版本來用應該都不會出事,一鍵安裝到底。

2. NVidia CUDA & cudnn
下載NVidia Cuda 9.0 Toolkit和 cudnn v7.05,去NV官網載就有,不要載新的,就這兩個,Cuda 9.0還有四個Patch,順便載下來安裝。安裝一鍵同意OK下一步到底無壓力。cudnn則解壓縮後扔進 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0這個資料夾。
弄好後檢查一下環境變數,在昏倒10的搜尋欄裡面找一下環境變數,應該就會彈「編輯系統環境變數」這東西,開啟後右下角有一個「環境變數」按鈕,檢查一下系統變數CUDA_PATH是不是指向上述那個咱放東西的資料夾。
 
3. Visual Studio 2017
這個就不好說了,我用的是學校提供的版本,基本上VS2017安裝檔就只是個傳送門,安裝的時候記得選取要用的套件,例如「使用C++的桌面開發」、「Python開發」一定要裝否則報錯百分百。

4.下載Mask-RCNN-master
這個應該是本流程中最最最簡單的步驟了,去Github上下載Mask-RCNN然後解壓縮到你想用目錄裡面,我是把他丟在文件\Python裡面。在此同時順便下載mask_rcnn_coco.h5,把它扔在那個Mask-RCNN-master資料夾裡面就好。

5.開房間...更正,開環境
在開始功能表開啟Anaconda Prompt(Ananconda3),輸入這個:

conda create -n MaskRCNN python=3.6

那個MaskRCNN隨便你取名字,不要取很難調用東西搞自己,例如大中天之類的。Python指定3.6版,試過新版了,跟某些包不相容我懶得抓原因了。
接著來啟動這個虛擬環境,輸入這個:

conda activate MaskRCNN

恭喜,環境開起來了,先升級一下pip吧等等會狂用,輸入這個:

pip install --user --upgrade pip

6. 安裝Tensorflow、Keras和其他包
輸入下面這兩列,沒報錯tensorflow大概就裝成了:

pip install tensorflow==1.5.0
pip install tensorflow-gpu==1.5.0

接著是keras:

pip install keras==2.1.6

再來是其他會用到的套件包,有些包可能已經裝過了,我是全部都打一遍免得出問題。
pip install numpy
pip install scipy
pip install Pillow
pip install cython
pip install matplotlib
pip install scikit-image==0.16.2
pip install opencv-python
pip install h5py
pip install imgaug
pip install IPython[all]

如果scikit-image已經被安裝過新版要降級,則試試這個:
pip install -U scikit-image==0.16.2
若安裝成功就不用管這行了。

如果單純訓練自己的資料集,那到這步就成了。
但是我手賤連cocoapi都順便裝好了,在昏倒環境下直接裝會出事,且看下方分解。
如果有要使用cocoapi,去Github上把cocoapi-master載下來解壓縮放好,該資料夾裡面有個PythonAPI資料夾,在這個資料夾裡面有setup.py檔案,用記事本或Visual Studio或其他你尬意的文字編輯器,編輯他,把第16行改成只有 "extra_compile_argus[] " 其他東西加個#符號註解掉並存檔。
回到剛剛那個Anaconda Prompt上cd到那個資料夾裡面的PythonAPI,輸入:
python setup.py build_ext --inplace
python setup.py build_ext install

基本上就能成功了,至於未來多次改版後還能不能成,本文不負責任啊。

肆、結語

本文只是記錄自己怎麼把這坨東西裝起來,接下來還有怎麼用,惡夢還沒結束呢。
歐還有如果髒話或厭世成分太多請多見諒不要告我。

創作回應

更多創作