RCNN 安裝編譯與MATLAB2014下問題解決

RCNN 是利用DL做目標檢測的一個程序,現在有更快的faster-RCNN。

github地址:https://github.com/rbgirshick/rcnn

caffe的安裝:

其實RCNN最難安裝部分就是caffe部分。所以我假設之前的CUDA,以及必需的矩陣計算庫之類的都安裝好了,如果沒有,參考:

http://www.cnblogs.com/platero/p/3993877.html

以及

http://blog.csdn.net/altenli/article/details/44199539

下面說RCNN的編譯:

首先是必須要在ubuntu matlab 2012下編譯(a,b都行),之前我的電腦一直是MATLAB2014,發現編譯完成之後,運行一直報錯,各種bug,根本的原因就是MATLAB版本不兼容。(這裏補充一下,可以在MATLAB2014下運行,感謝TongXu大神[https://github.com/tt-leader]的提醒,具體的方法在最後面附錄)


第二點就是:關於caffe的版本,作者在readme中提供的caffe-v0.999是有問題的,推薦另外一個也是v0.999版本但是,修復bug的版本:https://github.com/DeercoderResearch/caffe-0.999

第三點就是caffe編譯的問題了。解壓從第二步下載的文件,首先需要修改裏面的makefile.config中MATLAB的路徑(複製一個makefile.config.example),因爲我之前安裝的是matlab 2014,所以我要修改makefile.config的MATLAB路徑位置到現在安裝的MATLAB2012。同時修改CUDA的路徑。

然後依次:

make all -j4

make test

make runtest

,如果沒有報錯的話,編譯MATLAB 接口函數:

make matcaffe

然後就可以參考RCNN的readme的設置,建立關於caffe的軟連接,下載各種工具包,以及預訓練好的model。


 可能遇到的問題:

一般遇到的問題有下面幾個,大部分都能Google解決掉,或者直接在RCNN github的issues裏面找到答案,比如:

Expected 3 arguments,got 2

比較棘手的問題就是:MATLAB運行demo的時候直接crash崩潰了。這個時候,不要急,首先建議MATLAB是在terminal下啓動的,也就是在命令行下,那麼當MATLAB崩潰的時候,就會在命令行下給出崩潰的原因,最主要的原因就是caffe的編譯器和matlab接口的編譯器不一致。以及沒有安裝qt。就會報錯:

/usr/local/lib/libopencv_highgui.so.2.4:
undefined symbol: _ZNK9QCheckBox15minimumSizeHintE

首先安裝qt方法:

stackoverflow.com/questions/12330352/error-when-trying-to-use-mexopencv-in-matlab

具體的解決參考下面三個博客:

coldmooon.github.io/2015/08/03/caffe_install/

https://groups.google.com/form/#!topic/caffe-users/im_btmw44pc

blog.csdn.net/rosboy/article/details/40949453

同時,在運行的時候,默認caffe的輸入batch_size是256.這個很容易導致GPU的溢出,報錯說:

Check fialed: error == cudaSuccess ( 2 vs. 0 )  out of memory

於是需要修改batch_size的大小:

比如修改成16大小,需要修改兩個地方:一個是model-defs文件夾中的prototxt文件中的參數input-dim,第二個是data/rcnn-models中mat數據中的batch_size大小

附錄: MATLAB2014平臺下運行的方法:

1.rename startup.m in the $RCNN folder to start_up.m, justlet Matlab start normally because Matlab will run startup.m while staring up.

 2.run matlab interminal, make sure you are in the $RCNN folder.

3. run start_up.m in the command window of Matlab






發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章