一、安装
1.libsvm 下载 或者 从这里下载
2.将libsvm 解压到任意目录下(无空格,非中文):
3.运行matlab,在主页(home)的设置路径(set path)中添加libsvm:
4. 将当前路径设置到libsvm /matlab 后,在命令行窗口运行
》mex -setup
如果提示如下:
》make
需要打开libsvm/matlab目录下的make.m,将其中所的CFLAGS替换为COMPFLAGS,替换后执行make则可以编译成功。
二、出错急救指南
!!!!!如果以前没有安装过matlab下的C编译器,需要安装新的编译器,否则会出现:
安装以MinGW64 Compiler (C++)为例。
1.首先下载并且安装TDM-GCC:
http://tdm-gcc.tdragon.net/download
建议安装在C盘根目录下,根据许多前辈的经验,目录中名称不能出现空格。
2.配置环境变量:
从我的电脑属性-高级系统设置-高级-环境变量中,添加到系统变量(大部分配置环境变量都是如此)。
变量为:MW_MINGW64_LOC,
值为:TDM-GCC-64的安装位置。
3.在MATLAB命令行内运行命令
setenv('MW_MINGW64_LOC',folder),folder为TDM-GCC的安装位置,要加单引号。
此时mex可以正常使用,不然重启matlab即可。
!!!!!!!! 如果运行代码出现: 未定义函数或变量 'buildSFpyr'。
下载 sepspyr-master(git 搜索),并将其添加到matlab 路径:
三、测试
按照网上最常见的测试方法,来进行一下测试。
将Libsvm文件下的测试数据集heart_scale复制到Libsvm\matlab下,后续的操作将在该文件夹下进行,同时将MATLAB工作路径转至该文件下(在MATLAB中也可完成文件的复制粘贴工作)。
在命令行窗口输入
[heart_scale_label,heart_scale_inst]=libsvmread('heart_scale');
model = svmtrain(heart_scale_label,heart_scale_inst) ;
参考链接: