tensorflow版本faster-rcnn-CPU, ubuntu, Python3.5配置記錄
寫在前面的話
在實驗室電腦上進行fasterrcnn_tensorflow版本的配置,看了很多blog也踩了很多的坑,現在在這裡把正確的整個步驟記錄下來
軟硬體配置
主要是軟體方面,硬體方面由於使用的GPU是amd的,所以沒法使用tensorflow-GPU版本 軟體和python版本,python庫之類的,推薦使用anaconda進行配置,各種庫的安裝會方便很多,tensorflow具體的配置可見https://blog.csdn.net/zzyincsdn/article/details/83342304這篇文章,linux和win10下的配置基本是一樣的。在anaconda的安裝目錄的bin資料夾下執行anaconda-navigator也可以啟動py庫管理介面 python3.5 tensorflow 1.10.0 opencv 3.4.2(有py字首和無py字首的都裝上) cython 0.28.5 easydict(這個在anaconda裡我沒找到,用pip安裝的) pillow 5.2.0
配置流程
1.下載git上的原始碼
2.修改lib/setup.py檔案
該檔案在安裝根目錄的lib資料夾下,這個檔案是在配置中新增所需要的各個檔案模組。 整個程式碼修改部分的註釋建議使用#按行註釋而不是’’'來整段註釋 由於我們使用的是CPU版本,所以將圖片內該部分程式碼註釋掉 如果要嚴謹一點的化,不要忘記將Extension(“nms.cpu_num”…)這一段後面的逗號給刪除 將包含使用CUDA的行給註釋掉,因為使用的是CPU版本。 修改並儲存該檔案之後,執行source activate tensorflow(如果你已經用anacondea配置好一個名叫tensorflow的,包含了必要py庫的檔案的話,就直接這樣做,如果沒有,可以去看軟硬體配置部分推薦的文章或者學習anaconda的使用) 啟動環境,然後執行
3.修改lib/model/nms_wrapper.py檔案
開啟該目錄檔案,之後將需要gpu模組以及使用gpu返回結果的程式碼進行註釋,分別在import語句部分以及return語句部分
4.修改lib/model/config.py檔案
開啟該檔案,將__C.USE_GPU_NMS=True修改為False
連線使用cython
在lib目錄下,依次執行指令
make clean
make
cd ..
下載使用COCO資料庫
在data目錄下,下載並使用COCO資料庫
git clone https://github.com/pdollar/coco.git
cd coco/PythonAPI
make
cd ../../..
下載並連線已經完成訓練的資料模型
這裡使用的模型是 voc_0712_80k-110k.tgz,可以參照原始碼中的README.md檔案中的目錄去下載。如果不能,這裡提供一個連線
連結: https://pan.baidu.com/s/1dM6eygY67KzrEDbj03ZV7Q 提取碼: wfby
下載之後放在data目錄下解壓,我們會解壓得到一個名為ivoc_2007_trainval+voc_2012_trainval的資料夾
之後還是在data目錄下,依次執行以下命令
NET=res101
TRAIN_IMDB=voc_2007_trainval+voc_2012_trainval
mkdir -p output/${NET}/${TRAIN_IMDB}
cd output/${NET}/${TRAIN_IMDB}
ln -s ../../../voc_2007_trainval+voc_2012_trainval ./default
這一段程式碼在data/output/res101/voc_2007_trainval+voc_2012_trainval目錄下生成一個default指向訓練資料的軟連線
執行demo.py檔案
在原始碼主目錄中,我們執行 …/tools/demo.py 指令,demo檔案就可以正確執行並識別目標了。(要保持現在依然在activate我們的tensorflow環境才可以執行)
下一步的任務
嘗試使用課題研究所用的資料集,學習使用faster-rcnn進行模型的訓練