caffe中用faster-rcnn训练自己的数据集中出现的各种问题总结

caffe是处理cv比较好用的,caffe的难度就是make时你一定要编译成功,这里面有很多问题的,上一篇博客已经给出了如何编译的链接,反正多失败几次就能弄明白,因为我是用cpu配置的,相对简单多了。

1。demo.py中一定要设置成cpu的,关于gpu的#掉

#CUDA = locate_cuda()
...
...
#self.set_executable('compiler_so', CUDA['nvcc'])
...
...
#Extension('nms.gpu_nms',
#[‘nms/nms_kernel.cu', 'nms/gpu_nms.pyx'],
#library_dirs=[CUDA['lib64']],
#libraries=['cudart'],
#language='c++',
#runtime_library_dirs=[CUDA['lib64']],
## this syntax is specific to this build system
## we're only going to use certain compiler args with nvcc and not with
## gcc the implementation of this trick is in customize_compiler() below
#extra_compile_args={'gcc': ["-Wno-unused-function"],
#’nvcc': ['-arch=sm_35',
#’—ptxas-options=-v',
#’-c’,
#’—compiler-options',
#”’-fPIC'"]},
#include_dirs = [numpy_include, CUDA['include']]
#)

2。编译成功后,(cpu版本),当你在运行faster-rcnn时,出现NO module named gpu_nms时,注释${FCNN}/py-faster-rcnn/lib/fast_rcnn/nms_wrapper.py 中有关gpu的代码。


from fast_rcnn.config import cfg
#from nms.gpu_nms import gpu_nms
from nms.cpu_nms import cpu_nms

def nms(dets, thresh, force_cpu=False):
    """Dispatch to either CPU or GPU NMS implementations."""

    if dets.shape[0] == 0:
        return []
    #if cfg.USE_GPU_NMS and not force_cpu:
    #    return gpu_nms(dets, thresh, device_id=cfg.GPU_ID)
    else:
        return cpu_nms(dets, thresh)
3。因为我是运行的VGG-16版本的rcnn,当我运行./demo.py时,会出现核心转储,此时你运行sudo ./demo.py --cpu 就ok了

4。切忌你要测试的.py文件里面GPU的一定要设置好它

5。Makefile.config中的

WITH_PYTHON_LAYER := 1
去掉注释

参考链接

http://blog.csdn.net/tingyue_/article/details/53432071


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值