基于SVM的图像分类

本文介绍了如何在Windows64位的MATLAB环境中使用LibSVM进行图像分类。作者回顾了在2013年利用SVM完成的课程设计,详细阐述了从下载LibSVM,解决64位系统的兼容性问题,到在MATLAB中添加接口并测试SVMtrain的过程。此外,还提出基于SVM的图像分类基本思路,涉及SIFT特征提取和KMeans聚类,用于构建分类器。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天在星巴克呆了一天,复习了一下学习的内容,翻到了研一期间旁听人工智能的课程设计,第一个完全写的一个基于SVM的图像分类任务,记得当时我是实验室第一个独立完成课程设计的,其他小伙伴还是参考我的代码,现在工业界,已经被漫天的深度学习覆盖,难道忘记了曾经万能的SVM了吗?

还是写一遍小文,整理一下笔记,万一有初学者想要参考一下呢,也督促自己熟悉曾经做过的工作。

当时还在优快云上写过一篇文章,原因是用matlab配置libsvm总是配置不好(当时Win8.1是最新版的系统,libsvm还是最流行的svm工具包,当时是2013年),博客地址在http://blog.youkuaiyun.com/qust_waiwai/article/details/17189787 ,只是写了个草稿,没想到,却成了评论最多的文章。

那就先把这个草稿整理完。

Windows64位 MATLAB使用LibSVM

LibSVM的网站上下载压缩包,然后解压。会发现有一些文件夹还有一些代码文件,其中一个MATLAB的的文件夹,里面就是提供的matlab接口(这些都在根目录的README文件里面介绍了,还有其他接口的安装与使用说明)。

在MATLAB这个目录下也有一个README文件,这个文件详细的描述了如何使用LibSVM的MATLAB接口,其中介绍了64位系统提供了 预编译好的二进制可执行文件。

On Windows systems, pre-built binary files are already in the 
directory '..\windows', so no need to conduct installation. Now we 
provide binary files only for 64bit MATLAB on Windows. If you would 
like to re-build the package, please rely on the following steps.

至于为什么编译不好,先不浪费时间在这上面了,应该是编译器版本的原因,现在Win10要比Win8.1稳定了,应该就没有这个问题了。

将根目录中的windows目录拷贝到MATLAB的安装目录中的toolboxs中,里面全是各种包,不用自己在维护一个文件夹了,然后在MATLAB中Set Path,把这Windows目录添加进去,在MATLAB中就可以使用了。

输入 svmtrain 测试一下,会输出基本的用法:

>> svmtrain
Usage: model = svmtrain(training_label_vector, training_instance_matrix, 'libsvm_options');
libsvm_options:
-s svm_type : set type of SVM (default 0)
    0 -- C-SVC      (multi-class classification)
    1 -- nu-SVC     (multi-class classification)
    2 -- one-class SVM
    3 -- epsilon-SVR    (regression)
    4 -- nu-SVR     (regression)
-t kernel_type : set 
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值