【caffe-matlab】目标检测R-FCN算法于Windows下配置
首先謝謝好友推薦的這篇論文及代碼,前面學(xué)習(xí)的caffe可能比較淺顯,想要深入caffe就可以從這個代碼下手了,配置方法還是挺簡單的,但是可能會出現(xiàn)部分問題。在作者的論文中有g(shù)ithub的地址。注意,本文只介紹如何配置識別過程,關(guān)于如何配置訓(xùn)練過程,等這段時間忙完導(dǎo)師分配任務(wù)會再續(xù)博客,本文并不介紹理論。
國際慣例,貼幾個地址:
論文原始地址: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的六個文件的下載,讀者可以自行去下載(建議去主頁下載),為了方便,我也傳到自己的網(wǎng)盤了
【Resources】六個文件:鏈接:http://pan.baidu.com/s/1nuT917F 密碼:k6dg
其實(shí)后面還會有幾個需要的文件,遇到再說。下面按照作者github所述步驟開更~~~
【PS】說一下讀者需要注意的事情。首先強(qiáng)烈推薦讀者注意自己配置時候的各種路徑,否則會出現(xiàn)各種XXX找不到的問題。其次就是雖然論文作者提供的caffe與Windows差不多,但是好像修改了部分東西,因?yàn)槲以谡{(diào)用classification.m 的時候發(fā)現(xiàn)出現(xiàn)了一些問題,所以建議讀者不要拿微軟或者BVLC的caffe直接過來用。其次,一定要注意我貼出來的調(diào)試信息,很多人運(yùn)行第一個代碼會出現(xiàn)bin文件無法找到,這個文件是生成的,與MATLAB和VS編譯器的鏈接有關(guān),一定要注意你的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復(fù)制到E:\caffe-RFCN\R-FCN-master\external文件夾下,如下所示
然后按照前面配置caffe的博客一樣,我這里簡要說一下吧,詳細(xì)的配置方法去看置頂配置GPU博客。
①下載兩個文件cuda和cudnn,安裝cuda,解壓cudnn,將cudnn的三個文件夾復(fù)制到cuda的對應(yīng)地方,添加系統(tǒng)環(huán)境變量。【很多人犯錯只下載一個cuda,是不對的】
②修改caffe-rfcn-r-fcn的配置文件CommonSettings.props,作者其實(shí)大部分已經(jīng)修改好了,讀者需要做的僅僅是修改
<UseCuDNN>true</UseCuDNN> <MatlabDir>C:\Program Files\MATLAB\R2015b</MatlabDir>附一份我的配置文件:鏈接:http://pan.baidu.com/s/1o7XBd2a 密碼:c6pi
③雙擊caffe.sln,設(shè)置為Release模式,右鍵解決方案->生成解決方案:
④成功的標(biāo)志除了下面提示生成成功15個以外,還得核對一下E:\caffe-RFCN\R-FCN-master\external\caffe\Build\x64路徑下是否有Release文件夾,Release內(nèi)部有一個matcaffe文件夾。這個都是前面的配置工作,方法與配置GPU版本caffe一樣。
我的Release云盤共享(僅限VS2013+MATLAB2015b):鏈接:http://pan.baidu.com/s/1kVfiMe7 密碼:ugbu
第三步
【PS】在這一步會有一個問題很奇怪,并且未找到原因,如果不想看這個問題是啥樣的,直接進(jìn)行第四步就行,建議看一下。
在E:\caffe-RFCN\R-FCN-master\external\caffe\matlab路徑下新建一個文件夾caffe_rfcn
將Release內(nèi)部所有的文件全部復(fù)制到caffe_rfcn文件夾里面去(加上matcaffe,我這里面總共86個對象)
在matlab2015b中運(yùn)行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: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(859) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(1807) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(2657) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(3541) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(4492) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(5412) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(6320) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(7195) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(8066) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h(775) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h(1621) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_double_functions.h : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\sm_20_intrinsics.h : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\sm_20_intrinsics.h(943) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(859) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(1807) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(2657) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(3541) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(4492) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(5412) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(6320) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(7195) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(8066) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(859) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(1807) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(2657) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(3541) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(4492) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(5412) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(6320) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(7195) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(8066) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(910) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(1903) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(2843) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(3779) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(4721) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(5723) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(6682) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(7610) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(8543) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(9413) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(10391) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions_decls.h(11435) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h(775) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h(1621) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_double_functions.h : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\sm_20_intrinsics.h : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\sm_20_intrinsics.h(943) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(859) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(1807) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(2657) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(3541) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(4492) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(5412) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(6320) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(7195) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(8066) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h(775) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_functions.h(1621) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\device_double_functions.h : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\sm_20_intrinsics.h : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\sm_20_intrinsics.h(943) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(859) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(1807) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(2657) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(3541) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(4492) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(5412) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(6320) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(7195) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 c:\program files\nvidia gpu computing toolkit\cuda\v7.5\include\math_functions.h(8066) : warning C4819: 該文件包含不能在當(dāng)前代碼頁(936)中表示的字符。請將該文件保存為 Unicode 格式以防止數(shù)據(jù)丟失 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 已成功完成。 >> 接下來運(yùn)行startup.m: >> startup rfcn startup done >> 然后運(yùn)行E:\caffe-RFCN\R-FCN-master\experiments\script_rfcn_demo.m注意不要進(jìn)入experiments文件里面去運(yùn)行,要直接在E:\caffe-RFCN\R-FCN-master中展開experiments文件夾,右鍵script_rfcn_demo.m運(yùn)行就行了,否則會出現(xiàn):
rfcn startup done 警告: 已為類 "double" 的值編制索引且未指定任何下標(biāo)。當(dāng)前此操作的結(jié)果是已編制索引的值本身,但在以后的版本中,它將 成為錯誤。 > 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 無法將目錄改變?yōu)?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);>> 運(yùn)行方法截圖如下:
好吧,然后出現(xiàn)了熟悉的錯誤:
第四步
我當(dāng)時配置的時候是感覺E:\caffe-RFCN\R-FCN-master\external\caffe\matlab這個文件夾太亂了,因?yàn)槲覀兙幾g了caffe,看著就不爽,所以是新建的另一個文件夾去運(yùn)行R-FCN的程序,并且成功了,難道是這個原因?好吧,那就重新試試,在另一個文件夾運(yùn)行這個FCN程序。
依舊是在E:\caffe-RFCN新建了一個R-FCN1新文件夾,忽視里面的R-FCN,這是我寫博客之前配置的一個demo。
將R-FCN-master.zip里面的東西全部拷貝進(jìn)去,然后在E:\caffe-RFCN\R-FCN1\external\caffe下嵌套新建matlab\caffe_rfcn兩個文件夾,也就是說現(xiàn)在你的電腦存在類似這樣的路徑:E:\caffe-RFCN\R-FCN1\external\caffe\matlab\caffe_rfcn。好,現(xiàn)在再拷貝Release文件夾里面所有文件和文件夾到這個caffe_rfcn文件夾內(nèi),如下:
然后再到matlab2015b中去依次運(yùn)行rfcn_build.m和startup.m,得到如下結(jié)果
具有均值文件的github代碼:https://github.com/daijifeng001/R-FCN/tree/bd4ef56a33e44e8b0039423f030eb631aa80d154/models
具有均值文件的百度云代碼:鏈接:http://pan.baidu.com/s/1hrMYchI 密碼:dpat
對比一下這兩個代碼的models文件夾,發(fā)現(xiàn)論文提供的github代碼缺少的東西就有上面報(bào)錯的這個文件。如下圖所示分別展示論文的github鏈接(上)以及我們淘到的github鏈接(下)的models文件夾
——————————————————————————————————————————————————————————————————————————
那么我們就下載第二個截圖的R-FCN代碼,將其中的models下的pre_trained_models文件夾整個拷貝到我們在這一步開始新建的R-FCN代碼中的models文件夾中去,如下:
然后再去運(yùn)行script_rfcn_demo.m發(fā)現(xiàn)matlab未響應(yīng)了,好吧,重新打開matlab,依次運(yùn)行rfcn_build.m->startup.m->script_rfcn_demo.m,出現(xiàn)如下問題
rfcn startup done 警告: 已為類 "double" 的值編制索引且未指定任何下標(biāo)。當(dāng)前此操作的結(jié)果是已編制索引的值本身,但在以后的版本中,它將 成為錯誤。 > 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文件夾里面,這樣我們會有這樣一條路徑:
然后關(guān)掉matlab,依次運(yùn)行rfcn_build.m->startup.m->script_rfcn_demo.m,然后便看到結(jié)果咯:
rfcn startup done 警告: 已為類 "double" 的值編制索引且未指定任何下標(biāo)。當(dāng)前此操作的結(jié)果是已編制索引的值本身,但在以后的版本中,它將 成為錯誤。 > 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 >>
總結(jié)
以上是生活随笔為你收集整理的【caffe-matlab】目标检测R-FCN算法于Windows下配置的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 平安随享金额度是多少?占用信用卡额度吗?
- 下一篇: 【caffe-Windows】微软官方c