【caffe-matlab】目标检测R-FCN算法于Windows下配置


前言

首先谢谢好友推荐的这篇论文及代码,前面学习的caffe可能比较浅显,想要深入caffe就可以从这个代码下手了,配置方法还是挺简单的,但是可能会出现部分问题。在作者的论文中有github的地址。注意,本文只介绍如何配置识别过程,关于如何配置训练过程,等这段时间忙完导师分配任务会再续博客,本文并不介绍理论。

国际惯例,贴几个地址:

论文原始地址:https://arxiv.org/abs/1605.06409

论文云盘地址:链接:http://pan.baidu.com/s/1cwwdGy 密码:ztkl

【R-FCN-master】作者提供代码:https://github.com/daijifeng001/r-fcn

【R-FCN-master】博主云盘代码:链接:http://pan.baidu.com/s/1hsma2lI 密码:qg2j

【caffe-rfcn-r-fcn】作者提供代码:https://github.com/daijifeng001/caffe-rfcn

【caffe-rfcn-r-fcn】博主云盘代码:链接:http://pan.baidu.com/s/1b4nvX0 密码:dc73

此外还有作者github下提供的Resources的六个文件的下载,读者可以自行去下载(建议去主页下载),为了方便,我也传到自己的网盘了

【Resources】六个文件:链接:http://pan.baidu.com/s/1nuT917F 密码:k6dg

其实后面还会有几个需要的文件,遇到再说。下面按照作者github所述步骤开更~~~

【PS】说一下读者需要注意的事情。首先强烈推荐读者注意自己配置时候的各种路径,否则会出现各种XXX找不到的问题。其次就是虽然论文作者提供的caffe与Windows差不多,但是好像修改了部分东西,因为我在调用classification.m 的时候发现出现了一些问题,所以建议读者不要拿微软或者BVLC的caffe直接过来用。其次,一定要注意我贴出来的调试信息,很多人运行第一个代码会出现bin文件无法找到,这个文件是生成的,与MATLAB和VS编译器的链接有关,一定要注意你的MATLAB是否与C接口链接好

第一步

先下载R-FCN-master.zip然后解压,我解压到了E:\caffe-RFCN文件夹下,如下所示(共18个文件):


第二步

下载caffe-rfcn-r-fcn.zip,然后解压到E:\caffe-RFCN\R-FCN-master\external\caffe目录下,如下所示


然后可以将前面配置过的微软或者BVLC提供的caffe的依赖库NugetPackages复制到E:\caffe-RFCN\R-FCN-master\external文件夹下,如下所示


然后按照前面配置caffe的博客一样,我这里简要说一下吧,详细的配置方法去看置顶配置GPU博客。

①下载两个文件cuda和cudnn,安装cuda,解压cudnn,将cudnn的三个文件夹复制到cuda的对应地方,添加系统环境变量。【很多人犯错只下载一个cuda,是不对的】

②修改caffe-rfcn-r-fcn的配置文件CommonSettings.props,作者其实大部分已经修改好了,读者需要做的仅仅是修改

<UseCuDNN>true</UseCuDNN>
<MatlabDir>C:\Program Files\MATLAB\R2015b</MatlabDir>

附一份我的配置文件:链接:http://pan.baidu.com/s/1o7XBd2a 密码:c6pi

③双击caffe.sln,设置为Release模式,右键解决方案->生成解决方案:


④成功的标志除了下面提示生成成功15个以外,还得核对一下E:\caffe-RFCN\R-FCN-master\external\caffe\Build\x64路径下是否有Release文件夹,Release内部有一个matcaffe文件夹。这个都是前面的配置工作,方法与配置GPU版本caffe一样。

我的Release云盘共享(仅限VS2013+MATLAB2015b):链接:http://pan.baidu.com/s/1kVfiMe7 密码:ugbu

第三步

【PS】在这一步会有一个问题很奇怪,并且未找到原因,如果不想看这个问题是啥样的,直接进行第四步就行,建议看一下。

在E:\caffe-RFCN\R-FCN-master\external\caffe\matlab路径下新建一个文件夹caffe_rfcn

将Release内部所有的文件全部复制到caffe_rfcn文件夹里面去(加上matcaffe,我这里面总共86个对象)

在matlab2015b中运行E:\caffe-RFCN\R-FCN-master下的rfcn_build.m:

>> rfcn_build
Compiling nms_mex
使用 'Microsoft Visual C++ 2013 Professional' 编译。
MEX 已成功完成。
Compiling nms_gpu_mex
nvcc --compile -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" -o nms_gpu_mex.o  --machine 64  -I"C:\Program Files\MATLAB\R2015b/extern/include " -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5\include" -I"\common\inc" "functions/nms/nms_gpu_mex.cu" 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(859) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(1807) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(2657) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(3541) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(4492) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(5412) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(6320) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(7195) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(8066) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h(775) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h(1621) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_double_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\sm_20_intrinsics.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\sm_20_intrinsics.h(943) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(859) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(1807) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(2657) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(3541) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(4492) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(5412) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(6320) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(7195) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(8066) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(859) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(1807) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(2657) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(3541) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(4492) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(5412) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(6320) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(7195) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(8066) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(910) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(1903) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(2843) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(3779) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(4721) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(5723) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(6682) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(7610) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(8543) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(9413) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(10391) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(11435) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h(775) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h(1621) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_double_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\sm_20_intrinsics.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\sm_20_intrinsics.h(943) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(859) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(1807) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(2657) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(3541) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(4492) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(5412) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(6320) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(7195) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(8066) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h(775) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h(1621) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_double_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\sm_20_intrinsics.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\sm_20_intrinsics.h(943) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(859) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(1807) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(2657) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(3541) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(4492) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(5412) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(6320) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(7195) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(8066) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
nms_gpu_mex.cu 
mex -outdir bin nms_gpu_mex.o -L"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5\lib\x64" -lcudart
使用 'Microsoft Visual C++ 2013 Professional (C)' 编译。
MEX 已成功完成。
>> 
接下来运行startup.m:

>> startup
rfcn startup done
>> 
然后运行E:\caffe-RFCN\R-FCN-master\experiments\script_rfcn_demo.m

注意不要进入experiments文件里面去运行,要直接在E:\caffe-RFCN\R-FCN-master中展开experiments文件夹,右键script_rfcn_demo.m运行就行了,否则会出现:

rfcn startup done
警告: 已为类 "double" 的值编制索引且未指定任何下标。当前此操作的结果是已编制索引的值本身,但在以后的版本中,它将
成为错误。 
> In auto_select_gpu (line 16)In script_rfcn_demo (line 18) 
GPU 1: free memory 3919790080
Use GPU 1
警告: Specified caffe folder
(E:\caffe-RFCN\R-FCN-master\experiments\external\caffe\matlab\caffe_rfcn) is not exist,
change to default one (E:\caffe-RFCN\R-FCN-master\experiments\external\caffe\matlab) 
> In active_caffe_mex (line 19)In script_rfcn_demo (line 21) 
错误使用 cd
无法将目录改变为 E:\caffe-RFCN\R-FCN-master\experiments\external\caffe\matlab (Name is
nonexistent or not a directory)。出错 active_caffe_mex (line 25)cd(caffe_dir);出错 script_rfcn_demo (line 21)
active_caffe_mex(opts.gpu_id, opts.caffe_version);>> 
运行方法截图如下:


好吧,然后出现了熟悉的错误:

rfcn startup done
警告: 已为类 "double" 的值编制索引且未指定任何下标。当前此操作的结果是已编制索引的值本身,但在以后的版本中,它将
成为错误。 
> In auto_select_gpu (line 16)In script_rfcn_demo (line 18) 
GPU 1: free memory 3922522112
Use GPU 1
未定义函数或变量 'caffe_'。出错 caffe.set_device (line 9)
caffe_('set_device', device_id);出错 active_caffe_mex (line 26)caffe.set_device(gpu_id-1);出错 script_rfcn_demo (line 21)
active_caffe_mex(opts.gpu_id, opts.caffe_version);>> 
这就是我开始说的比较奇怪的问题,因为这个问题在前面我们也遇到过,但是是在拷贝那些dll之类的东西之前遇到的,我们这里拷贝了,按理说不会出现这个问题,而且看完第四步你会发现说它奇怪的另一个原因。

第四步

我当时配置的时候是感觉E:\caffe-RFCN\R-FCN-master\external\caffe\matlab这个文件夹太乱了,因为我们编译了caffe,看着就不爽,所以是新建的另一个文件夹去运行R-FCN的程序,并且成功了,难道是这个原因?好吧,那就重新试试,在另一个文件夹运行这个FCN程序。

依旧是在E:\caffe-RFCN新建了一个R-FCN1新文件夹,忽视里面的R-FCN,这是我写博客之前配置的一个demo。

将R-FCN-master.zip里面的东西全部拷贝进去,然后在E:\caffe-RFCN\R-FCN1\external\caffe下嵌套新建matlab\caffe_rfcn两个文件夹,也就是说现在你的电脑存在类似这样的路径:E:\caffe-RFCN\R-FCN1\external\caffe\matlab\caffe_rfcn。好,现在再拷贝Release文件夹里面所有文件和文件夹到这个caffe_rfcn文件夹内,如下:


然后再到matlab2015b中去依次运行rfcn_build.m和startup.m,得到如下结果

>> rfcn_build
Compiling nms_mex
使用 'Microsoft Visual C++ 2013 Professional' 编译。
MEX 已成功完成。
Compiling nms_gpu_mex
nvcc --compile -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" -o nms_gpu_mex.o  --machine 64  -I"C:\Program Files\MATLAB\R2015b/extern/include " -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5\include" -I"\common\inc" "functions/nms/nms_gpu_mex.cu" 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(859) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(1807) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(2657) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(3541) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(4492) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(5412) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(6320) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(7195) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(8066) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h(775) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h(1621) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_double_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\sm_20_intrinsics.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\sm_20_intrinsics.h(943) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(859) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(1807) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(2657) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(3541) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(4492) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(5412) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(6320) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(7195) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(8066) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(859) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(1807) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(2657) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(3541) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(4492) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(5412) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(6320) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(7195) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(8066) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(910) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(1903) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(2843) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(3779) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(4721) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(5723) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(6682) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(7610) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(8543) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(9413) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(10391) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(11435) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h(775) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h(1621) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_double_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\sm_20_intrinsics.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\sm_20_intrinsics.h(943) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(859) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(1807) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(2657) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(3541) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(4492) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(5412) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(6320) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(7195) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(8066) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h(775) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h(1621) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_double_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\sm_20_intrinsics.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\sm_20_intrinsics.h(943) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(859) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(1807) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(2657) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(3541) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(4492) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(5412) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(6320) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(7195) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(8066) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 
nms_gpu_mex.cu 
mex -outdir bin nms_gpu_mex.o -L"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5\lib\x64" -lcudart
使用 'Microsoft Visual C++ 2013 Professional (C)' 编译。
MEX 已成功完成。
>> startup
rfcn startup done
>> 
然后再展开experiments运行script_rfcn_demo.m,得到如下结果:

rfcn startup done
警告: 已为类 "double" 的值编制索引且未指定任何下标。当前此操作的结果是已编制索引的值本身,但在以后的版本中,它将
成为错误。 
> In auto_select_gpu (line 16)In script_rfcn_demo (line 18) 
GPU 1: free memory 3894493184
Use GPU 1
错误使用 load
无法读取文件 'E:\caffe-RFCN\R-FCN1\models\pre_trained_models\ResNet-101L\mean_image'。没有此类文
件或目录。出错 rfcn_config_ohem (line 57)s = load(conf.image_means);出错 script_rfcn_demo (line 30)
conf                   = rfcn_config_ohem('image_means',...>> 
可以发现第四步出现的问题在这里并没有出现,这两个步骤的配置基本一样,唯一的不同就是这里是新建的文件夹去运行相关demo。好吧,废话不多说,解决当前问题。看错误应该是少了个均值文件,找了一下,作者好像并没有提供这个文件及其下载地址,OK,去github淘一淘,果然又到了作者另一个R-FCN的demo下了,地址如下:

具有均值文件的github代码:https://github.com/daijifeng001/R-FCN/tree/bd4ef56a33e44e8b0039423f030eb631aa80d154/models

具有均值文件的百度云代码:链接:http://pan.baidu.com/s/1hrMYchI 密码:dpat

对比一下这两个代码的models文件夹,发现论文提供的github代码缺少的东西就有上面报错的这个文件。如下图所示分别展示论文的github链接(上)以及我们淘到的github链接(下)的models文件夹


——————————————————————————————————————————————————————————————————————————


那么我们就下载第二个截图的R-FCN代码,将其中的models下的pre_trained_models文件夹整个拷贝到我们在这一步开始新建的R-FCN代码中的models文件夹中去,如下:


然后再去运行script_rfcn_demo.m发现matlab未响应了,好吧,重新打开matlab,依次运行rfcn_build.m->startup.m->script_rfcn_demo.m,出现如下问题

rfcn startup done
警告: 已为类 "double" 的值编制索引且未指定任何下标。当前此操作的结果是已编制索引的值本身,但在以后的版本中,它将
成为错误。 
> In auto_select_gpu (line 16)In script_rfcn_demo (line 18) 
GPU 1: free memory 3875770368
Use GPU 1
错误使用 CHECK_FILE_EXIST (line 4)
E:\caffe-RFCN\R-FCN1\output\rfcn_demo\rfcn_VOC0712_ResNet101_OHEM_rpn_resnet101\final does
not exist出错 caffe.Net/copy_from (line 166)CHECK_FILE_EXIST(weights_file);出错 script_rfcn_demo (line 39)
caffe_net.copy_from(rfcn_net);>> 
好吧,这下就用到文章开始提到的Resource的六个文件中的其中一个了demo_models_ResNet-101L.zip,将output文件夹下的rfcn_demo文件夹拖到E:\caffe-RFCN\R-FCN1\output文件夹里面,这样我们会有这样一条路径:



然后关掉matlab,依次运行rfcn_build.m->startup.m->script_rfcn_demo.m,然后便看到结果咯:

rfcn startup done
警告: 已为类 "double" 的值编制索引且未指定任何下标。当前此操作的结果是已编制索引的值本身,但在以后的版本中,它将
成为错误。 
> In auto_select_gpu (line 16)In script_rfcn_demo (line 18) 
GPU 1: free memory 3882668032
Use GPU 1
000166, (375x500): time 0.298s
001852, (375x500): time 0.296s
002597, (375x500): time 0.288s
004030, (375x500): time 0.290s
005225, (375x500): time 0.291s
mean time: 0.293s
>> 






本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/246682.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【写作】Texlive和Texmaker学习

前言 最近要看一些论文做一下笔记&#xff0c;所以准备使用一下比较流行的Texlive和Texmaker写一下。其实CSDN的Markdown也是不错滴。 首先国际惯例&#xff0c;贴几个地址&#xff1a; Texlive镜像下载地址&#xff1a;http://mirror.lzu.edu.cn/CTAN/systems/texlive/Imag…

《Neural Networks for Machine Learning》学习一

前言 最近报了一下Hinton大牛的coursera的神经网络课程&#xff0c;奈何比较懒&#xff0c;一直没看&#xff0c;还是写个博客督促自己比较好 贴一下课程地址&#xff1a;https://www.coursera.org/learn/neural-networks/home/week/1 第一讲主题是为何需要机器学习&#xf…

《Neural Networks for Machine Learning》学习二

前言 课程地址&#xff1a;https://www.coursera.org/learn/neural-networks/home/week/1‘’ 【Lecture 2】百度云下载地址&#xff1a;链接&#xff1a;http://pan.baidu.com/s/1nvMynhR 密码&#xff1a;ru3y 神经网络架构概览 前馈神经网络(Feed-Forward neural network)…

入门 | 初学者必读:解读14个深度学习关键词

作者&#xff1a;Matthew Mayo 机器之心编译 参与&#xff1a;Xuwen Wang、Chen Chen 微信公众号&#xff1a;&#xff08;almosthuman2014&#xff09;授权转载&#xff0c;禁止二次转载&#xff0c;点此为原文链接 本文介绍了包括 LSTM、ANNS、生物神经元、反向传播、多元感知…

深度 | 一篇文章带你进入无监督学习:从基本概念到四种实现模型(附论文)

作者&#xff1a;Eugenio Culurciello 机器之心编译 参与&#xff1a;李亚洲、武竞 微信公众号&#xff1a;&#xff08;almosthuman2014&#xff09;授权转载&#xff0c;禁止二次转载&#xff0c;点此为原文链接 这是今年 6 月份普渡大学副教授 Eugenio Culurciello 写的一篇…

【caffe-Windows】微软官方caffe之 Python接口配置及图片生成实例

前言 发现许多代码还是用python写的&#xff0c;所以还是配置一下接口吧&#xff0c;虽然博主不会Python&#xff0c;咳咳。在这里使用的python安装包是anaconda2&#xff0c;注意使用Python2.7版本的那个安装包。 官网地址&#xff1a;https://www.continuum.io/downloads …

判别模型的玻尔兹曼机论文源码解读

前言 三号要去参加CAD/CG会议&#xff0c;投了一篇关于使用生成模型和判别模型的RBM做运动捕捉数据风格识别的论文。这段时间一直搞卷积RBM了&#xff0c;差点把原来的实验内容都忘记了&#xff0c;这里复习一下判别式玻尔兹曼机的训练流程。 国际惯例&#xff0c;贴几个链接…

Jacobian矩阵和Hessian矩阵

原文转自&#xff1a;http://jacoxu.com/?p146 1. Jacobian 在向量分析中, 雅可比矩阵是一阶偏导数以一定方式排列成的矩阵, 其行列式称为雅可比行列式. 还有, 在代数几何中, 代数曲线的雅可比量表示雅可比簇&#xff1a;伴随该曲线的一个代数群, 曲线可以嵌入其中. 它们全部都…

为什么梯度下降法对于非线性可分数据有效

前言 晚上逛微博看到的&#xff0c;顺便拿过来翻译一下&#xff0c;做做笔记 国际惯例&#xff0c;来个原文链接&#xff1a; 原文地址&#xff1a;Why is gradient descent robust to non-linearly separable data? PDF拷贝&#xff1a;http://download.csdn.net/detail/…

卷积RBM源码解读

前言 卷积RBM相对RBM来说具有很多优势&#xff0c;详细的我也不说了&#xff0c;看文章就行。主要还是为了加深自己对细节部分的理解吧。 国际惯例&#xff0c;贴几个链接 卷积RBM的创始人Honglak Lee&#xff1a;http://web.eecs.umich.edu/~honglak/hl_publications.html#…

c语言:递归法求n的阶乘|练习题

一、题目 输入一个数n&#xff0c;用递归法求n的阶乘 二、思路分析 1、因为n!(n-1)!*n,所以&#xff0c;可以选择用递归法 三、代码截图【带注释】 四、源代码【带注释】 #include <stdio.h> //思路&#xff1a; //因为n!(n-1)!*n,所以&#xff0c;可以选择用递归法 int…

【caffe-Windows】cifar实例编译之model的生成

参考&#xff1a;<span style"font-family: Arial, Helvetica, sans-serif;">http://blog.csdn.net/chengzhongxuyou/article/details/50715455</span> 准备工作 按照之前的教程&#xff0c;成功生成过caffe&#xff0c;并且编译整个caffe.sln项目工程&a…

机器学习性能改善备忘单:32个帮你做出更好预测模型的技巧和窍门

文章来源&#xff1a;大数据文摘 作者 | Jason Brownlee 选文 | Aileen 翻译 | 姜范波 校对 | 寒小阳 机器学习最有价值(实际应用最广)的部分是预测性建模。也就是在历史数据上进行训练&#xff0c;在新数据上做出预测。 而预测性建模的首要问题是&#xff1a; 如何才能得…

【caffe-Windows】新层添加——LSTM

前言 原始的【caffe-Windows】是没有LSTM层的&#xff0c;维护以后的caffe的windows版本也懒得配置了&#xff0c;因为大部分文章的代码还是基于老版caffe。其实大部分的添加层方法都可以参考本博客&#xff0c;仅限Windows。 需要的文件有&#xff1a; 1. 原始的caffe-Wind…

【caffe-Windows】关于LSTM的使用-coco数据集

前言 建议大家使用Linux&#xff0c;因为Linux下的配置就没这么麻烦&#xff0c;各种make就行啦。Linux用户请绕道&#xff0c;因为此博客只针对Windows&#xff0c;可能比Linux麻烦很多倍。 在caffe-Windows新增LSTM层以后&#xff0c;相信很多人和我一样很好奇如何使用这一…

【caffe-Windows】关于LSTM的简单小例子

前言 这里主要是看到了一个简单的LSTM例子&#xff0c;比上一个coco简单很多&#xff0c;所以在这里记录一下&#xff0c;便于后续的分析&#xff0c;参考博客在上一篇文章的末尾提到过&#xff1a;Recurrent neural nets with Caffe 需要说明的是这个例子也并非原原本本的使…

概率有向图模型

1. 前言 主要参考书籍《深度学习导论及案例分析》、维基百科“贝叶斯网络”、老笨妞的博客、PRML中文翻译&#xff0c;重点还是概念的掌握和几个小理论的推导&#xff0c;比较枯燥。加入了自己的一些简单理解。 个人感觉概率有向图模型最大的意义在于&#xff1a;一个特定的有…

概率无向图模型

1. 前言 前面看了概率有向图模型&#xff0c;必然对无向图模型也要研究一下。而且这个概率无向图模型对学习RBM有很大的帮助&#xff0c;它关系到能量函数的来源&#xff0c;所以还是看看吧。参考资料依旧是概率有向图模型中参考的三个资料。 有向图将一组变量上的联合概率分…

softmax理论及代码解读——UFLDL

前言 看了各种softmax以后迷迷糊糊的&#xff0c;还是研究一下UFLDL的教程稳点。当然还是得参考挺多教程的&#xff1a;UFLDL-softmax 、Softmax的理解与应用 、Logistic 分类器与 softmax分类器 、详解softmax函数以及相关求导过程 、Exercise:Softmax Regression 。 【UFLDL…

二值RBM与实值RBM理论及代码解读

1. 前言 虽然推导过二值形式的RBM&#xff0c;但是对于可见层为实值的输入还是半知半解的。最近写个深度学习相关综述&#xff0c;看了一些关于RBM的文献&#xff0c;这里做一下对比总结。但是不倾向于对实值RBM的推导&#xff0c;而是相关代码的实现。 2. RBM回顾 RBM是具有…