Ubuntu 14.04下Fast R-CNN编译与CUDNN兼容性问题解决方案

需积分: 9 10 下载量 159 浏览量 更新于2024-09-09 收藏 602KB DOCX 举报
在Ubuntu 14.04环境下编译和运行Fast R-CNN(Fast Region-based Convolutional Neural Networks)可能会遇到一系列问题,本文将指导读者如何解决这些问题。首先,从GitHub上克隆fast-rcnn的源代码: 1. 在终端中,切换到服务器的home目录,并使用命令`git clone --recursive https://github.com/rbgirshick/fast-rcnn.git`下载源码。这将创建一个名为fast-rcnn的子目录,包含了项目的所有文件。 接下来,为了编译fast-rcnn,你需要确保服务器上安装了必要的Python包: 2. 安装Python包是关键步骤,使用`sudo apt-get install python-pip`获取pip,然后安装cython、python-opencv和easydict,分别通过`sudo pip install cython python-opencv easydict`完成。 3. 进入`/home/(您的服务器名字)/fast-rcnn/lib`目录,执行`make`命令以生成Cython模块,这是编译过程的一部分。 然而,fast-rcnn自带的Caffe版本可能与当前系统中的CUDNN版本不兼容,特别是在Ubuntu 14.04上,由于CUDNN版本的问题(默认为4.0),可能会导致编译时出现浮点数异常。为了解决这个问题: - 方法一:降低CUDNN版本至4.0,这需要用户自行处理。 - 方法二:选择编译并替换官方的Caffe版本。由于fast-rcnn自带的Caffe较旧,可以尝试编译MSSOFT的Caffe-master,并将其命名为与fast-rcnn同名。在这个过程中,可能会遇到OpenCV相关的依赖问题,例如`cv::imread()`和`cv::imdecode()`函数的调用错误。 解决OpenCV问题的方法是在Makefile(通常在`fast-rcnn/tools`或`fast-rcnn/caffe-fast-rcnn/Makefile`中)的第166行添加`opencv_imgcodecs`库,以确保OpenCV相关功能的正确链接。 最后,运行demo.py脚本进行模型测试和训练。需要注意的是,具体执行`runtest`和训练命令可能需要根据项目的实际配置和路径进行调整。 要在Ubuntu 14.04上成功编译和运行Fast R-CNN,你需要处理好CUDNN版本、Python包安装、Cython模块生成以及OpenCV库集成等问题。务必根据自己的环境调整和解决遇到的具体错误。