- 博客(6)
- 资源 (2)
- 收藏
- 关注
原创 模式识别(3)-SVM分类算法
3.1.SVM算法原理和分析 SVM(Support Vector Machines),中文名字叫做支持矢量机。SVM也是寻找一个超平面,使得训练集中的点距离分类面尽可能的远,就是让这个分类面两侧放入空白区域最大。 支持矢量就是距离分类平面最近的一些样本点,对决策面的选取有决策作用。SVM训练代码:clear allclose allN1=440;for i=1:N1x1(1,i)=-1
2017-10-25 22:13:26 2280
原创 模式识别2-线性分类器(最小二乘法)
2.1:算法原理分析 有两类样本,X1,和X2,如果将这两类数据正确分类,则X1对应的y=1,X2对应的y=-1,但是,往往分类的结果不会都正确,这个时候就有分类错误,将这种错误用就是期望值与真实值的误差,用最小二乘法计算出分类错误: j(w)=E[|y-xT*w |^2] w=argmin(j(w)) 现在要做的是求出让代价函数j(w)取最小值的时候,w的取值。 要让j(w)最小
2017-10-25 12:46:52 6207
原创 模式识别1-线性分类器(感知机)
1.1:感知机算法原理 首先明确,感知机的输入和输出,输入就是一组向量,每个向量都有n个特征值,输出为每个向量的所属类别,对于二分类而言,就是+1和-1. 这个可以用sign函数来模拟: 输入空间到输出空间的函数为:f(x) = sign(w*x +b); 函数理解:w,b为感知机模型参数,w是一个权重向量,b是偏置,w*x是内积,sign是符号函数,当w*x+b>0时候,函数输出为
2017-10-25 12:44:01 1865
转载 C++计算代码运行时间
参考:http://blog.csdn.net/songzige/article/details/51181934#include "time.h" using namespace std; int main(){ clock_t start, finish; double time_length; start = clock();//start /
2017-10-15 16:10:50 733
原创 C++中一种典型的语法错误:c++中临时变量不能作为非const的引用参数
最近编译代码,出现了一种很奇怪的错误,按正常思维来说是没有问题的。 看错误信息(我编译的是oepnCV的代码) 错误对应的代码块: 错误原因分析: 就拿f(a + b)来说,a+b的值会存在一个临时变量中,当把这个临时变量传给f时,由于f的声明中,参数是int&,不是常量引用,因为c++编译器的一个关于语义的限制。 如果一个参数是以非const引用传入,c++编译器就有理由认为程序员会在函
2017-10-15 11:59:07 531
原创 Ubuntu下在openCV3.2中配置opencv_contrib,然后使用SURF算子
最近用openCV3.2,发现无法使用SURF做特征点的检测。百度了一下,发现了是这样解释的。 “图像识别中的特征点检测中,需要用到Surf和Sift算法,但是这两个算法在OpenCV 3.2的Release版本中并不存在,因为他们是存放在opencv_contrib目录下面的未稳定功能模块”。 安装好openCV_contrib用了我一下午时间,才让代码在openCVC3.2的环境下编译通过,
2017-10-02 20:54:17 1263
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人