py-faster-rcnn +cudnn V5

简介: 转载自http://blog.csdn.net/u010733679/article/details/52221404,经过实际操作,采用了第二种手动替换代码文件、修改个别函数名的方式,成功编译。---- 原文 -----faster rcnn 代码默认是使用的cudnn v4, 但是为了体验最...

转载自http://blog.csdn.net/u010733679/article/details/52221404,经过实际操作,采用了第二种手动替换代码文件、修改个别函数名的方式,成功编译。

---- 原文 -----

faster rcnn 代码默认是使用的cudnn v4, 但是为了体验最新的v5, 或者使用GTX1080 ,我们编译faster rcnn的时候就会报错:

In file included from ./include/caffe/util/cudnn.hpp:5:0,
from ./include/caffe/util/device_alternate.hpp:40,
from ./include/caffe/common.hpp:19,
from src/caffe/data_reader.cpp:6:
/usr/local/cuda/include/cudnn.h:799:27: note: declared here
cudnnStatus_t CUDNNWINAPI cudnnSetPooling2dDescriptor(

为此提供2种解决方案:

(1)取自github @manipopopo

cd caffe-fast-rcnn
Git remote add caffe https://github.com/BVLC/caffe.git
git fetch caffe
git merge caffe/master
Remove self_.attr("phase") = static_cast(this->phase_); from include/caffe/layers/python_layer.hpp after merging.

(2)手动修改文件,参考了卜居大神的博客 http://blog.csdn.net/kkk584520/article/details/51163564
方案1简单方便,但是当我们编译的是其他人修改过得源码,可能就会出错。方案2 步骤如下:

  1. 用最新caffe源码的以下文件替换掉faster rcnn 的对应文件

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

  1. 用caffe源码中的这个文件替换掉faster rcnn 对应文件

include/caffe/util/cudnn.hpp

  1. 将 faster rcnn 中的 src/caffe/layers/cudnn_conv_layer.cu 文件中的所有

cudnnConvolutionBackwardData_v3 函数名替换为 cudnnConvolutionBackwardData
cudnnConvolutionBackwardFilter_v3函数名替换为 cudnnConvolutionBackwardFilter

目录
相关文章
|
3月前
|
并行计算 计算机视觉
yolov5的detect.py的详细讲解
这篇文章详细讲解了YOLOv5的`detect.py`脚本中的参数,包括模型权重、输入源、图像尺寸、置信度阈值、IOU阈值、设备选择、结果显示、结果保存等,以及如何使用这些参数进行目标检测。
195 0
|
机器学习/深度学习 存储 JSON
YOLOv5的Tricks | 【Trick10】从PyTorch Hub加载YOLOv5
YOLOv5的Tricks | 【Trick10】从PyTorch Hub加载YOLOv5
1207 0
YOLOv5的Tricks | 【Trick10】从PyTorch Hub加载YOLOv5
|
机器学习/深度学习 编解码 自然语言处理
DeIT:Training data-efficient image transformers & distillation through attention论文解读
最近,基于注意力的神经网络被证明可以解决图像理解任务,如图像分类。这些高性能的vision transformer使用大量的计算资源来预训练了数亿张图像,从而限制了它们的应用。
578 0
|
自动驾驶 算法 API
YOLOX-PAI: An Improved YOLOX, Stronger and Faster than YOLOv6
我们开发了一个名为 EasyCV 的一体化计算机视觉工具箱,以方便使用各种 SOTA 计算机视觉方法。最近,我们将 YOLOX 的改进版 YOLOX-PAI 添加到 EasyCV 中。
200 0
|
Go 计算机视觉 网络架构
Beyond YOLOv8!| YOLOv6 v3.0 is coming!
Beyond YOLOv8!| YOLOv6 v3.0 is coming!
197 0
|
机器学习/深度学习 存储 机器人
LF-YOLO: A Lighter and Faster YOLO for Weld Defect Detection of X-ray Image
高效的特征提取EFE模块作为主干单元,它可以用很少的参数和低计算量提取有意义的特征,有效地学习表征。大大减少了特征提取的消耗
176 0
|
PyTorch 算法框架/工具
Inception(Pytorch实现)
Inception(Pytorch实现)
71 0
|
并行计算 Ubuntu 算法框架/工具
Caffe:使用 cudnn 5.1 配置 Faster-RCNN Caffe 并运行 demo
系统:Ubuntu 16.04 环境:CUDA 8.0 + cudnn 5.1 + BLAS + opencv 3.0.0
157 0
|
Python
YOLOv5的Tricks | 【Trick13】YOLOv5的detect.py脚本的解析与简化
YOLOv5的Tricks | 【Trick13】YOLOv5的detect.py脚本的解析与简化
1526 0
YOLOv5的Tricks | 【Trick13】YOLOv5的detect.py脚本的解析与简化
|
机器学习/深度学习 PyTorch 程序员
图像分割库segmentation_models.pytorch
图像分割库segmentation_models.pytorch
1028 0
图像分割库segmentation_models.pytorch