1. 程式人生 > >VLFeat在matlab和vs中安裝

VLFeat在matlab和vs中安裝

準備工作 。。 test 參數 gravity per start 文件夾 分享圖片

轉:http://blog.csdn.net/u011718701/article/details/51452011

博主最近用vlfeat庫做課題,網上搜索使用方法,一大片都會告訴你說:run(/vl_setup) 然後就好啦哈哈哈哈哈哈~~~~~~~~~~~~~~

But!理想很豐滿,現實很骨感,當博主在官網下載了vlfeat並按照如下操作之後:

技術分享圖片

MATLAB卻出現了如下錯誤:

Invalid MEX-file ‘D:\codingtool\library\vlfeat\toolbox\mex\mexw64\vl_version.mexw64‘: 找不到指定的模塊

我就知道沒這麽簡單啊摔(╯‵□′)╯︵┻━┻問題的關鍵是我進入mex\mexw64\明明能找到這個模塊的!為什麽MATLAB不可以!你是有多笨!!(博主的工科男票竟然讓博主重新解壓再來一次操作就好了呢~~博主考慮要不要換個男票了= =)於是博主痛定思痛,準備用vs先編譯一下vlfeat再看看效果,沒想到意外的成功了!好嗨森·~~下面就是完整的流程啦~

Step 1 準備工作要做好~

準備好vs2012(其他版本也可以,只要保證與MATLAB裏的一致就好)、vlfeat包http://www.vlfeat.org/index.html、MATLAB R2014b(其他版本應該也可以了啦~)

Step 2 VS2012編譯vlfeat

1. 打開VS2012 x64 Native Tools Command Prompt,在命令行中依次輸入如下圖所示的命令:

技術分享圖片技術分享圖片

看到上面的版本號11.00.50727.1了木有寶寶們?記住它哈~

2. 在vlfeat/make/nmake_helper.mak文件中加入vs2012參數(你是其他版本就找到其他版本對應的地方,看看有沒有你這個版本號,有的話就不用改了,麽有就加上),如下圖,在VL_MSVC = 11.0的那裏面已經有“11.00.50727.1”了,所以博主不用再加。如果你是vs2013,就找VL_MSVC = 12.0的,添上你的版本號就好啦。或者再沒有就直接在圈紅的那個位置自己寫上~

技術分享圖片技術分享圖片

3. 打開VS2012 x64 Native Tools Command Prompt(一般在開始菜單 vs對應文件夾下面就有),定位到/vlfeat-0.9.20目錄下,為了防止有小盆友不知道怎麽定位到,先貼圖說明哈,寶寶們要改的就是cd後面改成自己放vlfeat的位置~

技術分享圖片

技術分享圖片

4. 定位到之後輸入如下命令:

技術分享圖片技術分享圖片

然後寶寶們就靜靜的等著它編譯完成吧~完成之後並不會有說successful。。。命令提示還是靜靜的回到了初始狀態就說明沒問題啦:

4步完成後,將會在/vlfeat-0.9.20/bin目錄下,新增一個win64目錄,裏面會有生成的vl.dll、vl.lib和一些test執行文件,後面MATLAB就能用這些啦。

Step3 在MATLAB中完成最終配置

1. 首先打開MATLAB,輸入語句:run(‘D:/codingtool/library/vlfeat-0.9.20/toolbox/vl_setup‘);將vlfeat路徑添加進來。註意D:/codingtool/library是需要寶寶們改成自己放vlfeat的路徑噠~

2. 切換MATLAB路徑到vlfeat文件夾裏面,直接在下圖的紅色橫線那裏選到就行:

技術分享圖片技術分享圖片

3. 找到toolbox下面的vl_compile.m並直接運行之,然後靜候成功啦~

技術分享圖片技術分享圖片

4. 等他運行完成後可以在MATLAB裏輸入vl_version verbose。配置成功的話就是下面的效果啦~

技術分享圖片技術分享圖片

終於成功了好嗨森是不是~~~~~~博主還要囑咐一句,為了以後能一打開MATLAB就能麻溜兒的用起來vlfeat,寶寶們還要多做一步:把剛才的run(‘D:/codingtool/library/vlfeat-0.9.20/toolbox/vl_setup‘);語句保存成一個叫做startup.m的m文件,放在你的MATLAB打開時的那個路徑下(好像叫做啟動路徑吧),博主一打開MATLAB是這樣的路徑,所以你看startup就被我放在這裏了。

技術分享圖片技術分享圖片

然後就萬事大吉啦~感謝觀看喵,如果有幫到寶寶我很開熏~如果米有,那就遺憾啦T T

VLFeat在matlab和vs中安裝