ubuntu14.04编译和运行 fast rcnn
来源:互联网 发布:云教学平台为您优化 编辑:程序博客网 时间:2024/05/17 23:54
CuDNN兼容性问题造成的fast rcnn编译运行失败和出现浮点数例外(核心已转储)
1.第一部分:git官网的fast-rcnn源码
终端输入:
cd/home/**(您服务器的名字)
gitclone --recursive https://github.com/rbgirshick/fast-rcnn.git
下载完成后再home/**(您服务器的名字)下有
2. 第二部分:Python安装包cython,python-opencv,easydict
终端输入:
sudo apt-get install python-pip
sudo pip install cython
sudo apt-get install python-opencv
sudo pip install easydict
3. 第三部分:生成Cython模块
终端输入:
cd /home/**(您服务器的名字)/fast-rcnn/lib
make
4. 第四部分:安装atlas
终端输入:
sudo apt-get installlibatlas-base-dev
5. 第五部分:生成Caffe和pycaffe
进入caffe-fast-rcnn 目录:
Sudo mkdir build
Cd build
Cmake ..
Cd ..
Sudomake –j8 &&make pycaffe
Makematcaffe
Make runtest
如果你按照网上的方法配置他自带的caffe,就会出现上图的错误:浮点数例外(核心已转储)
原因是因为fastrcnn 自带的caffe是很早的版本,cudnn只有4.0不支持我们现在的cudnn 5.1,所以两种方法:1.对cudnn降价到4.0 ,请自行解决吧!2.我用我编译好的microsoft的caffe-master 来替带自带的caffe-fast-rcnn,然后把名字改成相同,这样再编译就不会出错误。接着如果你按照第二个方法做的话,会遇到很多错误。
我讲下我遇到的错误和解决方法,比如像cv::imread() cv::indecode()等等之类的opencv问题,解决办法:在caffe-fast-rcnn的Makefile目录里的第166行加入opencv_imgcodecs,如图所示:
在阴影部分的后面加入opencv_imgcodecs。
运行demo.py文件不说了。
接着在运行fastrcnn/tools/train_net.py时会出现错误:
在网络初始化到loss_bbox层时会出现smoothL1loss.cpperror :bottom.size=4(3vs.4) If weightsare used, must specify both inside and outside weights之类错误!
解决办法:找到SmoothL1loss.cpp,找到出错误的那部分,如图:
看到has_weights=(bottom.size()>=3);把它改成has_weights=(bottom.size()==3);然后下面的if语句用//注释掉。接着还要改,看到下面的这几行代码:
CHECK_EQ(bottom[0]->channels(),bottom[3]->channels());
CHECK_EQ(bottom[0]->height(), bottom[3]->height());
CHECK_EQ(bottom[0]->width(), bottom[3]->width());
这三行,也要用//注释掉。Ok!!!!!
再重新编译!!!!make clean make -j8
6.cp caffe里的cudnn.hpp ./include/caffe/util/cudnn.hpp
7.将./src/caffe/layer里所有以cudnn开头的文件,如cudnn_xxx_layer.cu,cudnn_xxx_layer.cpp
都替换成最新版的caffe里的相应的同名文件。
8.
重点问题:如果出现以下问题:
check failed error ==cudaSuccess(77 vs .0)an illegal memory access was encountered
check failed data_ *** check failure stacktrace:****
那是因为cudnn的问题,fastrcnn 只支持cudnn4 ,可以用以下方法解决:
cdcaffe-fast-rcnn
git init
git remote add caffehttps://github.com/BVLC/caffe.git
git fetch caffe
git clean -d-fx
git merge caffe/master
merge 后删除 include/caffe/layers/python_layer.hpp 中的 self_.attr("phase")= static_cast<int>(this->phase_);
9.
.在caffe中如何加入新的一层,就如如何加入normalize层,首先去找到caffe-ssd,因为这个caffe有normalize层,我们首先把normalize.cpp normalize.cu normalize.hpp复制到相应的位置,然后找到src/caffe/proto/caffe.proto,加入normalizeParameter层的声明(复制caffe-ssd)和下面加上定义(f复制caffe-ssd):message NormalizeParameter{
参数
}
网址:http://blog.csdn.net/shuzfan/article/details/51322976
10.运行demo.py和训练,请看网址:http://blog.csdn.net/u014696921/article/details/52453947
- ubuntu14.04编译和运行 fast rcnn
- fast-rcnn配置运行VGG16.caffemodel和VGG_CNN_M_1024.v2.caffemodel(Ubuntu14.04)
- fast-rcnn配置运行VGG16.caffemodel和VGG_CNN_M_1024.v2.caffemodel(Ubuntu14.04)
- fast-rcnn配置运行VGG16.caffemodel和VGG_CNN_M_1024.v2.caffemodel(Ubuntu14.04)
- fast-rcnn配置运行VGG16.caffemodel和VGG_CNN_M_1024.v2.caffemodel(Ubuntu14.04)
- fast-rcnn配置运行demo.py(Ubuntu14.04)
- fast-rcnn配置运行demo.py(Ubuntu14.04)
- fast-rcnn配置运行demo.py(Ubuntu14.04)
- ubuntu14.04+CPU环境下搭建caffe,python接口以及运行fast-rcnn实例
- Fast-rcnn配置运行
- Ubuntu14.04下Fast-RCNN配置VGG16.caffemodel
- Ubuntu14.04下Fast-RCNN配置VGG16.caffemodel
- **Ubuntu14.04+CPU+Python+Opencv配置Fast RCNN**
- Ubuntu14.04下Fast-rcnn训练自己的数据
- FAST-RCNN 和 Faster-RCNN
- rcnn、fast-rcnn和faster-rcnn
- FAST-RCNN运行成功---喜大普奔
- Windows下编译fast rcnn
- 每日AC -- 主对角线打印二维数组---美团点评2016研发工程师编程题(二)
- Spring--IoC--基于注解的DI-组件扫描器的base-package
- nodejs
- SQL Server时间格式转换为字符串形式的42种样式
- 数据结构及算法序言
- ubuntu14.04编译和运行 fast rcnn
- 判断链表中是否有环 ----- 有关单链表中环的问题
- 多路访问控制(MAC )协议
- 监控TP50 TP90 TP99说明
- CART 回归树代码实现
- Oracle数据库导入导出命令!
- HTML原生小框框
- [UnityUI]NGUI备忘录
- NOR flash和NAND flash区别,RAM 和ROM区别