運行Fast R-CNN的代碼
標簽(空格分隔): vision
FR-CNN是Ross Girshick的新作,從文章來看FR-CNN比R-CNN和SPPNet都快很多。當然R-CNN和SPPNet也都是Girshick的作品,F(xiàn)R-CNN的正確率不僅超越Girshick自己的嫡出,也超過了DPM等其他方法。
FR-CNN正如文章所說的是一個簡單,并且Elegant的框架。和那些Pipeline的模型相比,的確是優(yōu)雅很多的。當然FR-CNN本身也可以看作是一個Pipeline,只不過這個Pipeline只有兩個步驟,一是Pretrain的CNN,第二個是Region Pooling和Fully connected Network(FC)。
我認為優(yōu)雅之處在于:
- 文章采用了多目標的函數(shù),所以把分類問題和Localization問題一起解決了。
- 最終的目標函數(shù)可以用于Fine tune Pretrained CNN (當然也不是每一層都能Train)。這樣看起來就是一個統(tǒng)一的框架了。
Contents
- Basic system information
- Basic Hardware info
Basic Hardware info
- For training smaller networks (CaffeNet, VGG_CNN_M_1024) a good GPU (e.g., Titan, K20, K40, …) with at least 3G of memory suffices
- For training with VGG16, you’ll need a K40 (~11G of memory)
目前的GPU只有GTX750i,顯存只有2G,按照說明如果要使用GPU至少要3G的顯存。所以只能在CPU上面Run這個代碼。
Basic system information
使用Ubuntu Linux 14.04桌面版:
~$ uname -a
Linux cis-ubuntu-1 3.13.0-24-generic #46-Ubuntu SMP Thu Apr 10 19:11:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
需要安裝的基礎(chǔ)軟件
可能你的機器上沒有cython, easydict
sudo pip install cython
sudo pip install easydict
安裝Opencv
按照這個網(wǎng)頁的方法:
http://www./web/2014/06/installing-opencv-2-4-9-in-ubuntu-14-04-lts/
最后測試一下Python
python ~/opencv-2.4.9/samples/python2/turing.py

安裝Caffe (berkeley開發(fā)的一個Deep Learning的框架)
參考:我的安裝Caffe的過程
安裝 Fast R-CNN
- 下載源代碼:
git clone --recursive https://github.com/rbgirshick/fast-rcnn.git
下載代碼的目錄,命名為$FRCN_ROOT。
- 編譯Cython:
cd $FRCN_ROOT/lib
make
- 編譯Caffe and pycaffe:
cd $FRCN_ROOT/caffe-fast-rcnn
cp Makefile.config.example Makefile.config #用例子文件作為模板
vi Makefile.config # 按照你的機器設(shè)置進行修改。
make -j8 && make pycaffe
- 下載pre-computed Fast R-CNN detectors
大概985M, 用了一個小時。
cd $FRCN_ROOT
./data/scripts/fetch_fast_rcnn_models.sh
運行演示
cd $FRCN_ROOT
./tools/demo.py --cpu
碰到的問題:
- 錯誤: ImportError: No module named skimage.io
sudo pip install scikit-image
- 錯誤: ImportError: No module named google.protobuf.internal
sudo find / -name protobuf
/usr/include/google/protobuf # 只有C版本的protobuf
apt-get install python-protobuf
然后終于可以運行了。
在AMD的機器上,500×406的街景圖片,用來63秒。(還不包括Selective Search計算Proposal的部分,因為這部分是事先計算好的。)
運行的結(jié)果看起來還不錯,對路邊的車輛都能識別出來。

對代碼還有很多不明白之處(150523)。
- 為什么安裝好了Caffe以后,安裝Fast R-CNN的時候,還需要make caffe?
|