VLFeat在matlab和vs中安装

Posted 小虾米的java梦

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VLFeat在matlab和vs中安装相关的知识,希望对你有一定的参考价值。

转: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中安装的主要内容,如果未能解决你的问题,请参考以下文章

在Ubuntu14.04中安装Octave的Vlfeat

Matlab中配置VLFeat

在 java 中使用 VLfeat 库编译 Matlab 代码

matlab - vlfeat - vl_pegasos (svm) 分类

Matlab中VLFeat的图像拼接

matlab配置vlfeat库(v0.9.18)