DeepLab v2 配置
来源:互联网 发布:做视频剪辑的软件 编辑:程序博客网 时间:2024/05/16 05:00
DeepLab v2配置过程不是很麻烦,但资料很少,此处详解一下:
1)cudnn降级:因为Caffe版本所导致的问题,DeepLab的作者推荐使用cudnn v4,如果不是的话,可以考虑降级或者文件移植。先说降级;
到英伟达官网下载nudnn v4(注册即可下载),随便找个地方解压。
以v5将v4为例
sudo rm /usr/local/include/cudnn.h
sudo rm /usr/local/lib/libcudnn.so*
降级
sudo cp ./include/cudnn.h /usr/local/include
sudo cp ./lib64/libcudnn.so* /usr/local/lib
链接cuDNN的库文件
sudo ln -sf /usr/local/lib/libcudnn.so.4.0.7 /usr/local/lib/libcudnn.so.4
sudo ln -sf /usr/local/lib/libcudnn.so.4 /usr/local/lib/libcudnn.so
sudo ldconfig -v
按照自己的版本修改
除此之外,也可以在新的版本的Caffe中拷贝以下文件,将Deeplab中的对应文件覆盖而不执行降级操作,个人建议选择降级。
include/caffe/layers/cudnn_relu_layer.hpp, src/caffe/layers/cudnn_relu_layer.cpp, src/caffe/layers/cudnn_relu_layer.cu
include/caffe/layers/cudnn_sigmoid_layer.hpp, src/caffe/layers/cudnn_sigmoid_layer.cpp, src/caffe/layers/cudnn_sigmoid_layer.cu
include/caffe/layers/cudnn_tanh_layer.hpp, src/caffe/layers/cudnn_tanh_layer.cpp, src/caffe/layers/cudnn_tanh_layer.cu
- sudo apt-get install libmatio-dev
(3)atomicAdd的重写问题,cuda8中出现了atomicAdd的定义,从而产生bug
将这个文件修改下common.cuh,修改如下,注意最后的endif
#ifndef CAFFE_COMMON_CUH_#define CAFFE_COMMON_CUH_#include <cuda.h>#if !defined(__CUDA_ARCH__) || __CUDA_ARCH__ >= 600#else// CUDA: atomicAdd is not defined for doublesstatic __inline__ __device__ double atomicAdd(double *address, double val) { unsigned long long int* address_as_ull = (unsigned long long int*)address; unsigned long long int old = *address_as_ull, assumed; if (val==0.0) return __longlong_as_double(old); do { assumed = old; old = atomicCAS(address_as_ull, assumed, __double_as_longlong(val +__longlong_as_double(assumed))); } while (assumed != old); return __longlong_as_double(old);}#endif#endif
至此基本就可以make通过了,接下来就可以阅读run.py文件,了解数据集该如何放置,注意在config文件夹下有相关配置文件(不是voc12下的那个)
在运行的过程中可能会出现CUDN_MAP_ERROR,这种情况下是数据集没做好,VOC的数据集不能拿来直接跑,而是要标定到0-20内的灰度图,标好后就不会报错了,现在我的DeepLab v2感觉训练没啥问题,就是测试时会出现LOSS为0的情况,欢迎交流!
- DeepLab V2 配置bug
- DeepLab v2 配置
- DeepLab V2安装配置
- 图像分割 DeepLab v2
- [Paper Reading] DeepLab v1 & v2
- deeplab-v2 安装问题总结
- Deeplab V1 和 V2讲解
- <caffe安装系列>deeplab-v2问题总结
- DeepLab v2安装问题解决-------安装笔记
- 基于deeplab v2的语义分割
- 论文阅读:《DeepLab-v2: Semantic Image Segmentation 》
- Deeplab-v2 编译过程中的问题
- deepLab
- 语义分割DeepLab v2--DeepLab: Semantic Image Segmentation with Deep Convolutional Nets, Atrous Convolut
- 基于deeplab v2的语义分割参考博文
- Deeplab v2 调试全过程(Ubuntu 16.04+cuda8.0)
- 图像语义分割:从头开始训练deeplab v2系列之四【nyu v2数据集】
- 图像语义分割:从头开始训练deeplab v2系列之一【源码解析】
- 小学生图解排序算法:⑧计数排序
- Trace32 加载高通 ramdump
- 面向对象的代码体现
- 配置服务器 —— 配置Nginx
- 递归的函数——三维数组+动态规划
- DeepLab v2 配置
- IOS之UI--动态设置NavigationBar的颜色以及透明度
- Mysql用户密码设置修改和权限分配(转载)
- 架构之路--同步类容器和并发类容器
- DBUtils原理及基本使用
- iOS7之后 改变状态栏颜色方法
- 进程及进程控制块
- (八)ROS创建点云数据并在rviz中显示
- 一致性Hash算法的实现