Python版
环境:Caffe,LINUX,GPU,CUDA
主要从环境编译、模型的训练和测试三个方面进行说明。
一、环境编译及demo的实现
1.编译caffe是出现的问题:
/usr/local/cuda/include/cudnn.h:803:27:note: declared here
make: ***[.build_release/src/caffe/solvers/adam_solver.o] Error 1
问题出现的原因:随着cudnn的更新,原来fasr-rcnn的cu代码已经不再适用,需要将py-faster-rcnn中的cudnn代码进行更新。(caffe最新版本的下载:https://github.com/BVLC/caffe.git)
解决办法:
(1)将./include/caffe/util/cudnn.hpp换成最新版的caffe里的cudnn的实现,即相应的cudnn.hpp.
(2)将./include/caffe/layers里的,所有以cudnn开头的文件,例如cudnn_conv_layer.hpp。 都替换成最新版的caffe里的相应的同名文件。
(3)将./src/caffe/layer里的,所有以cudnn开头的文件,例如cudnn_lrn_layer.cu,cudnn_pooling_layer.cpp,cudnn_sigmoid_layer.cu。都替换成最新版的caffe里的相应的同名文件。
2.出现nvcc warning : The 'compute_20', 'sm_20', and'sm_21' architectures are deprecated, and may be removed in a future release(Use -Wno-deprecated-gpu-targets to suppress warning)
问题出现的原因:编译GPU-caffe时会出现nvcc warning : The 'compute_20', 'sm_20', and'sm_21' architectures are deprecated, and may be removed in a future release(Use -Wno-deprecated-gpu-targets to suppress warning)类似的问题,这是由于现在已经弃用sm20、21,
解决办法:所以在Makefile.config文件中找到CUDA_ARCH 将前面两行删除即可。
所有的环境已经编译成功(确保根据Faster-RCNN中的README的教程一步步执行),下面执行demo。
3.出现bash: ./tools/demo.py: Permission denied
解决方案有两个,第一个就是赋予文件可执行性: chmod +x tools/demo.py (这种方式可以解决shell脚本的权限问题);
第二种方法就是使用这样的调用方式:ptyhon tools/demo.py(优先使用这种方法解决python脚本的权限问题)
问题解决: