deeplab运行指南

以下仅仅为一个总结,参考了网上的众多资料,仅备忘记。

主要链接

主要运行步骤

如下我们主要以网上开源的一个版本讲解:https://github.com/xmojiao/deeplab_v2 .
主要的步骤可以参考:
1. 图像语义分割:从头开始训练deeplab v2系列之一【源码解析】
2. 图像语义分割:从头开始训练deeplab v2系列之二【VOC2012数据集】
3. Deeplab v2 调试全过程(Ubuntu 16.04+cuda8.0)

下面说一些这上面没有的我遇到的一些问题。
1. 安装 matio:
上面资料中都使用 matio-1.5.2.tar.gz ,但是我装不上,可能与我的库不兼容,于是我下载了最新的 matio-1.5.11 ,并且按照如下命令运行安装:

cd matio-1.5.11 
./configure --prefix=/data1/... (填写自己的安装目录)
make 
make check (可略)
make install 

最后在bash.rc上加上 LD_LIBRARY_PATH=/your/path/to/libmatio.so.2

参考:http://blog.csdn.net/houqiqi/article/details/46469981
2. 使用的Caffe版本比较陈旧,导致会出现很多和最新环境不兼容的情况,我使用的是cuDNN6.0,cuda8.0
出现:

./include/caffe/util/cudnn.hpp: In function ‘void caffe::cudnn::createPoolingDesc(cudnnPoolingStruct**, caffe::PoolingParameter_PoolMethod, cudnnPoolingMode_t*, int, int, int, int, int, int)’:
./include/caffe/util/cudnn.hpp:127:41: error: too few arguments to function ‘cudnnStatus_t cudnnSetPooling2dDescriptor(cudnnPoolingDescriptor_t, cudnnPoolingMode_t, cudnnNanPropagation_t, int, int, int, int, int, int)’
         pad_h, pad_w, stride_h, stride_w));

这是由于所使用的cuDNN版本不一致的导致的,作者配置环境是cuDNN 4.0,但是5.0版本后的cuDNN接口有所变化。

解决方法 :将以下几个文件用最新BVLC版本的caffe对应文件替换并重新编译

./include/caffe/util/cudnn.hpp
./include/caffe/layers/cudnn_conv_layer.hpp
./include/caffe/layers/cudnn_relu_layer.hpp
./include/caffe/layers/cudnn_sigmoid_layer.hpp
./include/caffe/layers/cudnn_tanh_layer.hpp</
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值