基于Libsvm的图像分类
基于Libsvm的图像分类之Libsvm建模预测参数详解
- 关于Libsvm的废话
- 基于Libsvm的图像分类实例
- 说说图像分类的处理结果
1. 关于Libsvm的废话
先来一段废话,大家有心情看看就行,那就是关于支持向量机的问题,支持向量机是在统计学习理论基础上发展起来的一种机器学习方法。基于数据的机器学习是现代智能技术中的一个重要方面,研究的实质是根据给定的训练样本求对某系统输入输出之间依赖关系的估计,使它能对未知输入作出尽可能准确的预测和估计。本文提出了一种利用支持向量机(SupportvectorMachine,简称 SVM)的图像分类方法,关于其他支持向量机(SVM)相关的东西在这里就不多做介绍了。
最初接触支持向量机和Libsvm是上个学期的事情了,学的时间不多,零零碎碎,主要是为了完成导师布置的任务,也就是关于这篇文章第二部分的实例。之所以选择在这个时候写一篇文章,一个方面是所感自学过程中一路的磕磕绊绊,最为无奈的就是在Libsvm相关资料的查找上,虽说有MATLAB中文论坛和MATLAB技术论坛可以提问抑或是查找问题,但说实话一般在论坛提问的方式,效率还是很低下的,关于利用Libsvm图像分类这一块资料更是少之又少;另一方面也是因为自己即将要开始另外一个项目,接手一个项目,免不了要学习新的知识,学习新的知识前,总结一下以前所学,回顾自己做过的东西,算是给过去一个交代,也是对自己所学知识的温习巩固。
关于Libsvm的下载与安装,在这里我就不累赘了,博主用的是林智仁先生的,这个是可以到林智仁先生主页下载的,当然也可以用faruto的,相关基础知识不多说,安装使用大家可以参考MATLAB论坛中faruto学长的“关于SVM的那些破事”一文,虽然其中不少链接已经失效,但相当基础的东西还是有不少,svm算法练习的书网上有不少电子版的下载,再此也不再赘述。
2. 基于Libsvm的图像分类实例
文采不太好,口才也不太好,一向都是我的短板,所以废话不多说,直接说需求:
导师安排的任务很简单,也很好理解,就是给出一副三维的遥感图像,要求我把遥感图像中的事物进行分类,如何分类呢?这个分类如何理解是关键,经过自己思量,我理解导师是让我用rgb颜色可视化不同的事物,通俗点也就是说,把遥感图像中的不同事物用不同的rgb颜色进行分类,遥感图像如下:
现在任务大家也都知道了,也就是说我们首先明确了自己要做什么,那么接下来就是确认自己怎么实现目标,在此,我明确了以下几个步骤:
1. 导入图像,即读取图像。
2. 特征提取,选择感兴趣区域,即选取训练集,在这里选取了六块,即在六类事物中选取,之后就是将三维的块–>二维。
3. 在选取的块中选100个点作为训练集。
4. 利用选取的训练样本建立分类模型。
5. 预测分类
6. rgb可视化
根据以上步骤,我们就能很容易的实现我们的编码工作,详细代码如下,供参考:
%% ImageClassifyLibsvm
% a litter test of image classification based on libsvm
% by xiaochou
% last modified 2016.01.26
%% 清空环境变量

3934

被折叠的 条评论
为什么被折叠?



