Faster R-CNNを、Ubuntu16.04+CUDA8.0+CUDNN5.1にインストールした。
手順は以下の通り。
1)py-faster-rcnnのレポジトリをclone
> git clone --recursive https://github.com/rbgirshick/py-faster-rcnn.git
2)最新のcaffeをmerge
以下のコメントを参考にした。
https://github.com/rbgirshick/py-faster-rcnn/issues/237
> cd py-faster-rcnn/caffe-fast-rcnn > git remote add caffe https://github.com/BVLC/caffe.git > git fetch caffe > git merge -X theirs caffe/master
> vi include/caffe/layers/python_layer.hpp //self_.attr("phase") = static_cast(this->phase_);
3)以下に忠実に従う。
https://github.com/BVLC/caffe/wiki/Ubuntu-16.04-or-15.10-Installation-Guide
しかしながら、「make test」実行時に、以下のエラーがでる。
src/caffe/test/test_smooth_L1_loss_layer.cpp:11:35: fatal error: caffe/vision_layers.hpp: No such file or directory
しかし、これは単にテスト時の問題だけなので、以下に従って、フォルダ「src/caffe/test/」にあるtest_smooth_L1_loss_layer.cppを、test_smooth_L1_loss_layer.cpp.origに書き換えて、make testおよびmake runtestを実行すればよい。
github.com
4)cv2モジュールのインストール
> pip install opencv-python
5)easydictモジュールのインストール
> pip install easydict
6)libのmake
> cd lib > make
7)python-tkのインストール
sudo apt-get install python-tk
これで、tools/demo.pyは動くものの独自のコードを実行すると以下のようなエラーがでた。。。
Solving... F0106 18:44:41.869225 2554 syncedmem.hpp:39] Check failed: error == cudaSuccess (77 vs. 0) an illegal memory access was encountered
いろいろ調べたが解決方法がわからず。少し古いcaffe(2017年5月ごろ)が、たまたま手元にあったので、試したら上記のエラーは出なかった。