一些知识点的初步理解_8(Graph Cuts,ing...)
摘要:Graph cuts是一种十分有用和流行的能量优化算法,在计算机视觉领域普遍应用于前背景分割(Image segmentation)、立体视觉(stereo vision)、抠图(Image matting)等。Graph Cuts理论最早是出现在流网络优化领域的,比如说水管网络,通信传输网络,城市车流网络等。此时的Graph Cuts算法是用来确定网络流的最小分割,即寻找一个容量最小的边的集合,去掉这个集合中的所有边就可以阻挡这个网络了。需要注意的是,通常所说的Graph Cuts算法是指的采用最大流-最小分割来优化的模型,其它的Graph Cutting算法一般用graph par...
阅读全文
posted @
2012-11-06 18:48
tornadomeet
阅读(17710)
推荐(2) 编辑
一些知识点的初步理解_7(随机森林,ing...)
摘要:在机器学习中,随机森林由许多的决策树组成,因为这些决策树的形成采用了随机的方法,因此也叫做随机决策树。随机森林中的树之间是没有关联的。当测试数据进入随机森林时,其实就是让每一颗决策树进行分类,最后取所有决策树中分类结果最多的那类为最终的结果。因此随机森林是一个包含多个决策树的分类器,并且其输出的类别是由个别树输出的类别的众数而定。随机森林可以既可以处理属性为离散值的量,比如ID3算法,也可以处理属性为连续值的量,比如C4.5算法。另外,随机森林还可以用来进行无监督学习聚类和异常点检测。 随机森林由决策树组成,决策树实际上是将空间用超平面进行划分的一种方法,每次分割的时候,都将当前的空间一...
阅读全文
posted @
2012-11-06 09:33
tornadomeet
阅读(32943)
推荐(2) 编辑
PCA算法学习_1(OpenCV中PCA实现人脸降维)
摘要:前言: PCA是大家经常用来减少数据集的维数,同时保留数据集中对方差贡献最大的特征来达到简化数据集的目的。本文通过使用PCA来提取人脸中的特征脸这个例子,来熟悉下在oepncv中怎样使用PCA这个类。 开发环境:ubuntu12.04+Qt4.8.2+QtCreator2.5.1+opencv2.4.2 PCA数学理论: 关于PCA的理论,资料很多,公式也一大把,本人功底有限,理论方面这里就不列出了。下面主要从应用的角度大概来讲讲具体怎么实现数据集的降维。把原始数据中每个样本用一个向量表示,然后把所有样本组合起来构成一个矩阵。当然了,为了避免样本的单位的影响,样本集需要标准化。求该...
阅读全文
posted @
2012-09-06 11:13
tornadomeet
阅读(58618)
推荐(3) 编辑
初步体验libsvm用法3(matlab实例)
摘要:本次所讲的是libsvm在matlab中的2个应用实例,是本学期模式识别的2个编程作业题。一、16棋盘格数据分类试验目的:产生16棋盘的训练数据,用svm训练出一个模型,然后对新来的样本进行分类预测。试验说明:训练数据样本数为1600个,即每个格子中随机产生100个数据点,分为2类,2种颜色分布在16个格子中,相交分布。测试数据样本点数为320个,即每个格子中的数据点为20个。如果分类预测正确,则用绿色画出,预测错误,则用红色画出。实验结果: 产生的训练样本分布图如下所示: 训练样本分布图如下: 预测结果如下(如果分类正确用绿色显示,否则用红色显示): 实验结果评价...
阅读全文
posted @
2012-06-04 16:45
tornadomeet
阅读(20289)
推荐(1) 编辑
初步体验libsvm用法2(matlab下安装使用)
摘要:在前面的博文《初步体验libsvm用法1(官方自带工具)》:http://www.cnblogs.com/tornadomeet/archive/2012/04/12/2443993.html 中已经初步介绍了使用官方自带的svm几个exe文件来可视化操作分类问题,但是在实际编程中,svm的训练和预测有可能只是项目工程的一部分,嵌入在其中了。我们不能单独拿出来处理。所以libsvm需要与其他的计算机语言平台相结合。 这一节主要讲libsvm在matlab下的初步体验。 我的matlab版本为matlab(R2011b),c/c++编译器为vs c++2010(32位)。这里需要注意的是...
阅读全文
posted @
2012-06-02 20:26
tornadomeet
阅读(9294)
推荐(0) 编辑
前景检测算法_4(opencv自带GMM)
摘要:前面已经有3篇博文介绍了背景减图方面相关知识(见下面的链接),在第3篇博文中自己也实现了gmm简单算法,但效果不是很好,下面来体验下opencv自带2个gmm算法。 opencv实现背景减图法1(codebook和平均背景法) http://www.cnblogs.com/tornadomeet/archive/2012/04/08/2438158.html opencv实现背景减图法2(帧差法) http://www.cnblogs.com/tornadomeet/archive/2012/05/01/2477629.html opencv实现背景减图法3(GMM) http...
阅读全文
posted @
2012-06-02 10:59
tornadomeet
阅读(31951)
推荐(3) 编辑
前景检测算法_3(GMM)
摘要:摘要 本文通过opencv来实现一种前景检测算法——GMM,算法采用的思想来自论文[1][2][4]。在进行前景检测前,先对背景进行训练,对图像中每个背景采用一个混合高斯模型进行模拟,每个背景的混合高斯的个数可以自适应。然后在测试阶段,对新来的像素进行GMM匹配,如果该像素值能够匹配其中一个高斯,则认为是背景,否则认为是前景。由于整个过程GMM模型在不断更新学习中,所以对动态背景有一定的鲁棒性。最后通过对一个有树枝摇摆的动态背景进行前景检测,取得了较好的效果。关键字:GMM,opencv,前景检测前言 前景检测主要分为帧差法,平均背景法,光流法,前景建模法,背景非参数估计,背景建模法等。而..
阅读全文
posted @
2012-06-02 09:37
tornadomeet
阅读(36671)
推荐(7) 编辑
本人常用资源整理(ing...)
摘要:Deep Learning(深度学习):ufldl的2个教程(这个没得说,入门绝对的好教程,Ng的,逻辑清晰有练习):一ufldl的2个教程(这个没得说,入门绝对的好教程,Ng的,逻辑清晰有练习):二Bengio团队的deep learning教程,用的theano库,主要是rbm系列,搞pytho...
阅读全文
posted @
2012-05-24 08:32
tornadomeet
阅读(45173)
推荐(41) 编辑
Reading papers_6(Pattern Recognition And Machine Learning一书,ing...)
摘要:第一章,引论 本章是本书的纲领,有着统领全局的味道。 首先通过一个多项式曲线拟合的例子引出了本领域的一些概念,比如线性模型,过拟合,错误函数,模型比较和模型选择,最大似然,正则化,岭回归,权值衰减,验证集,hold-out集等。 然后作者分别从概率理论,决策理论,信息理论三个方向分别介绍了这几个理论在模式识别和机器学习中的作用。本书也是由这3个理论贯穿的,其中最终要的理论是概率理论。(待续…)第二章,概率分布
阅读全文
posted @
2012-05-10 21:41
tornadomeet
阅读(1854)
推荐(0) 编辑
HMM学习笔记_3(从一个实例中学习Viterbi算法)
摘要:在上一篇博客http://www.cnblogs.com/tornadomeet/archive/2012/03/24/2415583.html中,我们已经从一个例子中学会了HMM的前向算法,解决了HMM算法的第一个问题,即模型评估问题。这一讲中我们来解决第二个问题:HMM的解码问题,即即给定观测序列 O=O1O2O3…Ot和模型参数λ=(A,B,π),怎样寻找满足这种观察序列意义上最优的隐含状态序列S,这一步中最常用的算法就是Viterbi算法了。 同样的,我们先引入3个符合: :表示在观察时刻t正处在状态j,且沿一条路径q1q2q3..qt,产生出的o1o2o3…ot最大概率。 :表示的.
阅读全文
posted @
2012-03-24 19:24
tornadomeet
阅读(26730)
推荐(6) 编辑
HMM学习笔记_2(从一个实例中学习HMM前向算法)
摘要:HMM算法想必大家已经听说了好多次了,完全看公式一头雾水。但是HMM的基本理论其实很简单。因为HMM是马尔科夫链中的一种,只是它的状态不能直接被观察到,但是可以通过观察向量间接的反映出来,即每一个观察向量由一个具有相应概率密度分布的状态序列产生,又由于每一个状态也是随机分布的,所以HMM是一个双重...
阅读全文
posted @
2012-03-24 16:16
tornadomeet
阅读(32318)
推荐(6) 编辑