1. 程式人生 > >tensorflow版本faster-rcnn-CPU, ubuntu, Python3.5配置記錄

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的使用) 啟動環境,然後執行

python3 setup.py build_ext --inplace 該指令會將setup.py中設定的模組進行裝載。如果不裝載的話,在識別過程中是無法找到對應py模組的。筆者就是在修改儲存setup.py之後忘記執行裝載,所以遇到了很多麻煩,包括No module named ‘nms.cpu_nms’以及No module named 'utils.cython_bbox’等等

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進行模型的訓練