• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Matlab中配置VLFeat

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

 在VLFeat官网上是这么介绍VLFeat的:VLFeat开源库实现了很多著名的机器视觉算法,如HOGSIFTMSERk-meanshierarchical k-meansagglomerative information bottleneckSLIC superpixels, 和 quick shift。VLFeat开源库是用C语言写的,以确保其效率和兼容性,同时VLFeat还提供了MATLAB接口和详细的文档。它可以在windows, Mac, 和Linux上使用。

言归正传,以下介绍vlfeat在mathlab中的配置方法:

一、首先应准备的东西:
1. Matlab软件(我使用的mathlab是2014b试用版的)
2. vlfeat文件,可以是二进制包,也可以是源码。如果使用windows平台的话,推荐使用二进制包。
二进制包的下载地址可以从官网下载,也可以从我的个人网盘下载:
官网地址:http://www.vlfeat.org/download/

二、安装
1. 将所下载的二进制包解压缩到某个位置,如D:\盘
2. 打开matlab,输入edit startup.m创建启动文件startup.m
3. 在startup.m中编辑发下内容(注意,如果将vlfeat安装在不同的地方,需要将以下的”D:\”改为你所安装的地址):

run(\'D:\vlfeat-0.9.18\toolbox\vl_setup\')

4. 保存并关闭startup.m文件,重新打开matlab程序,安装即成功(安装成功后,不能删除vlfeat解压后的文件夹,因为vl_setup只是 将vlfeat的toolbox的地址加到matlab的path里面,使得matlab可以使用vlfeat toolbox)

三、验证安装
可以通过以下两种方式查看是否安装成功:
1. 在matlab中输入path,可以发现在path中保存了vlfeat toolbox的地址(如下图所示):

2. 在matlab中输入vl_version ,可以得到vlfeat的版本号(如下图所示):

 

四、可能碰到的错误
有同学反映,编辑完startup.m文件并重启matlab后,没有执行startup.m中的run命令。关于这一点,可能是因为startup.m文件并不在初始的path中。以至于matlab启动时没有找到startup.m文件。解决方法有两个:
1. 在matlab中,在ENVIRONMENT选项卡中,选择setPath选项,将startup.m文件所在的文件夹包含到path中。
2. 直接将startup.m文件复制(或剪切)到初始的path路径下。

 

五.MatConvNet的使用

http://www.vlfeat.org/matconvnet/quick/

% Install and compile MatConvNet (needed once).
untar(\'http://www.vlfeat.org/matconvnet/download/matconvnet-1.0-beta23.tar.gz\') ;
cd matconvnet-1.0-beta23
run matlab/vl_compilenn ;

% Download a pre-trained CNN from the web (needed once).
urlwrite(...
  \'http://www.vlfeat.org/matconvnet/models/imagenet-vgg-f.mat\', ...
  \'imagenet-vgg-f.mat\') ;

% Setup MatConvNet.
run matlab/vl_setupnn ;

% Load a model and upgrade it to MatConvNet current version.
net = load(\'imagenet-vgg-f.mat\') ;
net = vl_simplenn_tidy(net) ;

% Obtain and preprocess an image.
im = imread(\'peppers.png\') ;
im_ = single(im) ; % note: 255 range
im_ = imresize(im_, net.meta.normalization.imageSize(1:2)) ;
im_ = im_ - net.meta.normalization.averageImage ;

% Run the CNN.
res = vl_simplenn(net, im_) ;

% Show the classification result.
scores = squeeze(gather(res(end).x)) ;
[bestScore, best] = max(scores) ;
figure(1) ; clf ; imagesc(im) ;
title(sprintf(\'%s (%d), score %.3f\',...
   net.meta.classes.description{best}, best, bestScore)) ;

按照步骤即可完成实验;原理后续慢慢理解。

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Delphi文本文件操作发布时间:2022-07-18
下一篇:
Delphi中调用API函数经验点滴发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap