Я пытаюсь собрать и запустить модель py-faster-rcnn на моем Ubuntu 16.04. .
Однако, когда я запускаю ./tools/demo.py
(как указано в руководстве по установке), я получить следующую ошибку:
➜ py-faster-rcnn git:(master) ✗ ./tools/demo.py
Traceback (most recent call last):
File "./tools/demo.py", line 18, in <module>
from fast_rcnn.test import im_detect
File "/home/denis/WEB/DeepLearning/py-faster-rcnn/tools/../lib/fast_rcnn/test.py", line 16, in <module>
import caffe
File "/home/denis/WEB/DeepLearning/py-faster-rcnn/tools/../caffe-fast-rcnn/python/caffe/__init__.py", line 1, in <module>
from .pycaffe import Net, SGDSolver, NesterovSolver, AdaGradSolver, RMSPropSolver, AdaDeltaSolver, AdamSolver
File "/home/denis/WEB/DeepLearning/py-faster-rcnn/tools/../caffe-fast-rcnn/python/caffe/pycaffe.py", line 13, in <module>
from ._caffe import Net, SGDSolver, NesterovSolver, AdaGradSolver, \
ImportError: No module named _caffe
Прежде чем пытаться установить py-faster-rcnn, я установил Caffe
в свою папку ~/code/caffe
, и, похоже, он работает нормально:
➜ ~ python
Python 2.7.12 (default, Nov 19 2016, 06:48:10)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import caffe
>>> print caffe.__version__
1.0.0-rc3
Итак, если я могу импортировать модуль caffe
в среду Python, я предполагаю, что установил его успешно.
Вот команды, которые я использовал (из официального руководства):
sudo make all
sudo make test
sudo make runtest
sudo make pycaffe
sudo make distribute
Затем я клонировал репозиторий py-faster-rcnn в свою папку ~/WEB/DeepLearning
.
После этого я следовал инструкциям по установке из репозитория:
- Клонировать репозиторий
cd $FRCN_ROOT/lib && make
cd $FRCN_ROOT/caffe-fast-rcnn
make -j8 && make pycaffe
(это я не запускал)cd $FRCN_ROOT && ./data/scripts/fetch_faster_rcnn_models.sh
cd $FRCN_ROOT && ./tools/demo.py
Итак, шаг 4 в руководстве по установке говорит, что я должен собрать caffe
и pycaffe
в папке $FRCN_ROOT/caffe-fast-rcnn
. Содержимое папки caffe-fast-rcnn
кажется идентичным оригинальному репозиторию caffe
, из которого я собрал Caffe
.
Итак, кажется, мне не нужно снова строить caffe
, верно? При попытке запустить демо я пропустил этап сборки caffe
и получил указанную выше ошибку.
Погуглив некоторое время, я обнаружил, что моя проблема связана с переменными среды пути, поэтому ниже приведены мои переменные пути в .bashrc
:
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:~/code/caffe/distribute/lib:$LD_LIBRARY_PATH
export CPLUS_INCLUDE_PATH=/usr/include/python2.7
export PYTHONPATH=~/code/caffe/python:$PYTHONPATH
Я делаю что-то не так, и мне нужно как-то изменить переменные пути? Или мне действительно нужно снова собрать caffe
, но уже в папке caffe-fast-rcnn
?
А как насчет этой папки distribute
, которую я создал в ~/code/caffe/distribute
, запустив sudo make distribute
? Это полезно? Если да, то как мне его использовать? Официальная документация не очень ясна по этому поводу.
Было бы очень полезно простое, ясное и подробное объяснение того, как использовать уже созданную структуру Caffe с другими проектами, такими как Faster-RCNN.