opencv
文章平均质量分 96
loveliuzz
这个作者很懒,什么都没留下…
展开
-
OpenCV人脸识别实验(二)——特征脸(fisherface)及其重构的源代码详解
1、算法介绍线性鉴别分析在降维的同时考虑类别信息,由统计学家 Sir R. A. Fisher发明。为了找到一种特征组合方式,达到最大的类间离散度和最小的类内离散度。这个想法很简单:在低维表示下,相同的类应该紧紧的聚在一起,而不同的类别尽量距离越远。 后来,把鉴别分析引入到人脸识别问题中。令x是一个来自c个类中的随机向量,散度矩阵 和S_{W}如下计算:其中原创 2017-06-29 10:44:39 · 5473 阅读 · 0 评论 -
LDA(线性判别分析或称Fisher线性判别),PCA(主成份分析)代码及表情识别中的应用
【原文:http://blog.csdn.net/raby_gyl/article/details/20362373】1、LDA线性判别分析也称FLD(Fisher线性判别)是一种有监督的学习方法(supervised learning)。LDA的基本思想是:找到一个最佳的判别矢量空间,使得投影到该空间的样本的类间离散度与类内离散度比达到最大。转载 2017-06-22 11:24:57 · 1102 阅读 · 0 评论 -
OpenCV保存成XML(FileStorage)和CSV(重载<<运算符)文件
XML文件(使用FileStorage类)使用OpenCV时不仅要保存影像结果,往往也需要保存中间的矩阵结果,而OpenCV的imwrite函数只支持CV8U类型的数据(使用OpenCV保存其他类型Mat的时候,程序不会报错,但是无法生成结果文件),因此会给工作带来很多不便。OpenCV在2.0以后的版本中提供了FileStorage类,供用户直接使用,保存为XML/YAML文件。转载 2017-06-23 09:32:35 · 876 阅读 · 0 评论 -
OpenCV中的Resize函数和Reshape函数
OpenCV中的Resize和Reshape都是改变一个矩阵的形状,那它们有哪些不同点呢?1.Mat::reshape( ) 只是在逻辑上改变矩阵的行列数或者通道数,没有任何的数据的复制,也不会增减任何数据,因此这是一个O(1)的操作,它要求矩阵是连续的。C++: Mat Mat::reshape(int cn, int rows=0 const)cn:目标通道数,如果转载 2017-06-23 10:12:33 · 5090 阅读 · 0 评论 -
【OpenCV3】彩色映射——cv::applyColorMap()与cv::LUT()详解
在图像处理的过程中,我们通常会遇到将灰度图像映射成彩色图像的情形(即通常所说的伪彩映射),OpenCV2和OpenCV3中均提供了两个用于伪彩映射的函数——cv::applyColorMap()和cv::LUT()。1、cv::applyColorMap()cv::applyColorMap()是使用opencv预定义的colormap,将灰度图映射成彩色图像。opencv中提供了转载 2017-06-23 10:29:25 · 1739 阅读 · 0 评论 -
opencv中伪彩色applyColorMap函数(C++ / Python)
在本教程中,我们将首先给出一个简单的方法,使用OpenCV的预定义的颜色映射来将灰度图像伪彩色化。另外,我们还将展示一个方法,如果你想使用你自己定义一个自定义的调色板。我会分享C++和Python代码,你可以在这里下载。 这篇文章是专门为美国宇航局的新边疆计划,帮助探索木星,金星和冥王星! 通常,空间中的行星和其他物体的灰度图像是伪彩色来显示细节,并对不同颜色的不同材质对应翻译 2017-06-23 15:34:12 · 50466 阅读 · 2 评论 -
线性判别分析(Linear Discriminant Analysis, LDA)算法分析
【原文:http://blog.csdn.net/warmyellow/article/details/5454943】LDA算法入门 一. LDA算法概述:线性判别式分析(Linear Discriminant Analysis, LDA),也叫做Fisher线性判别(Fisher Linear Discriminant ,FLD),是模式识别的经典算法,它是在1996年转载 2017-06-27 10:58:23 · 649 阅读 · 0 评论 -
OpenCV仿射变换 & SURF特征点描述
本篇文章中,我们一起探讨了OpenCV中仿射变换和SURF特征点描述相关的知识点,主要一起了解OpenCV中仿射变换相关的函数warpAffine和getRotationMatrix2D,SURF算法在OpenCV中进一步的体现与应用。此博文一共有两个配套的麻雀虽小但五脏俱全的示例程序,其经过浅墨详细注释过的代码都在文中贴出,且文章最后提供了综合示例程序的下载。依然是先看看示例程序截图:转载 2017-07-05 20:17:18 · 849 阅读 · 0 评论 -
在opencv3中的机器学习算法
在opencv3.0中,提供了一个ml.cpp的文件,这里面全是机器学习的算法,共提供了这么几种:1、正态贝叶斯:normal Bayessian classifier 我已在另外一篇博文中介绍过:在opencv3中实现机器学习之:利用正态贝叶斯分类2、K最近邻:k nearest neighbors classifier3、支持向量机:support vectors转载 2017-07-06 16:41:57 · 429 阅读 · 0 评论 -
基于级联分类器的目标检测objdect
OpenCV支持的目标检测的方法是利用样本的Haar特征进行的分类器训练,得到的级联boosted分类器(Cascade Classification)。注意,新版本的C++接口除了Haar特征以外也可以使用LBP特征。先介绍一下相关的结构,级联分类器的计算特征值的基础类FeatureEvaluator,功能包括读操作read、复制clone、获得特征类型getFeatureType,分配转载 2017-06-29 21:14:24 · 631 阅读 · 0 评论 -
目标检测的图像特征提取——Haar特征
1、Haar-like特征 Haar-like特征最早是由Papageorgiou等应用于人脸表示,Viola和Jones在此基础上,使用3种类型4种形式的特征。Haar特征分为三类:边缘特征、线性特征、中心特征和对角线特征,组合成特征模板。特征模板内有白色和黑色两种矩形,并定义该模板的特征值为白色矩形像素和减去黑色矩形像素和。Haar特征值反映了图像的灰度变化情况。例转载 2017-06-29 20:59:02 · 569 阅读 · 0 评论 -
怎样使用OpenCV进行人脸识别
本文大部分来自OpenCV官网上的Face Reconition with OpenCV这节内容(http://docs.opencv.org/modules/contrib/doc/facerec/facerec_tutorial.html),小弟我尝试翻译一些重要内容。这部分内容是Philipp Wagner写的,他的github:https://github.com/bytefish,他转载 2017-06-20 15:59:02 · 1812 阅读 · 0 评论 -
OpenCV实现人脸识别——EigenFace特征脸法
从OpenCV2.4开始,加入新的类FaceRecognizer,可以用它方便的进行人脸识别实验。目前支持的算法有 Eigenface特征脸 createEigenFaceRecognizer() Fisherface createFisherFaceRecognizer() Local Binary P转载 2017-06-20 10:26:06 · 7787 阅读 · 0 评论 -
概述FaceRecognizer人脸识别类contrib
在最新版的2.4.2中,文档的更新也是一大亮点,refrence manual扩充了200多页的内容,添加了contrib部分的文档。contrib就是指OpenCV中新添加的模块,但又不是很稳定,可以认为是一个雏形的部分。这次结合refman的阅读,介绍一下FaceRecognizer这个人脸识别类,这个类也是2.4.2更新日志里着重强调过的更新,配套的文档也是相当充实。这个类的基类也是Algo转载 2017-06-20 10:27:30 · 1571 阅读 · 0 评论 -
opencv_traincascade支持Haar和LBP特征
使用级联分类器工作包括两个阶段:训练和检测。 检测部分在OpenCVobjdetect 模块的文档中有介绍,在那个文档中给出了一些级联分类器的基本介绍。当前的指南描述了如何训练分类器:准备训练数据和运行训练程序。重点注意事项OpenCV中有两个程序可以训练级联分类器: opencv_haartraining 和opencv_traincascade 。 opencv_tra转载 2017-06-20 10:30:09 · 758 阅读 · 0 评论 -
基于OpenCV的EigenFace FisherFace LBPHFace人脸识别的实现
OpenCV自带了丰富的人脸识别库,本文通过阅读OpenCV文档,实现了人脸识别的三种经典算法:PCA(特征脸方法),LDA(线性判别分析),以及LBP(Local Binary Patterns,局部二值模式)方法。人脸数据集采用的是Yale的人脸数据库和att_faces人脸库,下载链接http://pan.baidu.com/s/1hrmZRZe 下面附上代码:/*2015.12.3转载 2017-06-20 10:32:14 · 1397 阅读 · 0 评论 -
Windows环境中编译opencv3.0同时加入OPENCV_contrib库及解决遇到相关问题
因为opencv3.0默认安装中没有加入SIFT、SURF等点特征检测,一百度下一跳,原来这玩意还弄了个其他的库,还只能在GitHub上才能弄到,这两天弄opencv3的contrib库,遇到了一些问题,为了让大家更好、更快用上contrib库,根据谷歌百度的几个问题,现分享给大家完整流程,也欢迎大家与我讨论其他opencv方面的问题。一、下载安装准备github desktop转载 2017-06-20 10:34:04 · 561 阅读 · 0 评论 -
【计算机视觉】OpenCV人脸识别facerec源码分析2——LBPH概述
人脸识别从OpenCV2.4开始,加入了新的类FaceRecognizer,我们可以使用它便捷地进行人脸识别实验。其源代码可以在OpenCV中的opencv\modules\contrib\doc\facerec\src下找到。目前支持的算法有:Eigenfaces特征脸createEigenFaceRecognizer()Fisherfaces createF转载 2017-06-20 10:35:24 · 1246 阅读 · 0 评论 -
【图像处理】windows 10 + vs2015+ opencv3.0.0 +附加模块opencv_contrib编译和配置
0.前言将基于低版本opencv(比如2.3.1)的程序,在vs2015+opencv3.0的环境下编译会报错: “未声明的标识符:SiftFeatureDetector ” “未声明的标识符BruteForceMatcher” 查阅才知,sift、surf等等已经被移到opencv_contrib模块,如果需要在高版本opencv中使用到opencv_contrib模块,则需转载 2017-06-20 10:37:31 · 2909 阅读 · 1 评论 -
InputArray和OutputArray的那些事
看过OpenCV源代码的朋友,肯定都知道很多函数的接口都是InputArray或者OutputArray型的,这个接口类还是很强大的,今个就来说说它们的那些事。InputArray这个接口类可以是Mat、Mat_、Mat_、vector、vector>、vector。也就意味着当你看refman或者源代码时,如果看见函数的参数类型是InputArray型时,把上诉几种类型作为参数都是可以的转载 2017-06-20 11:28:25 · 2799 阅读 · 0 评论 -
OpenCV人脸识别实验(一)——特征脸(Eigenfaces)及其重构的源代码详解
1、介绍Introduction从OpenCV2.4开始,加入了新的类FaceRecognizer,我们可以使用它便捷地进行人脸识别实验。本实验采用的编程环境为:opencv3.0+VS2013。人脸识别的实验已经转移到face模块中,face模块在我这里的路径为:D:\Program Files\opencv3.0\opencv\sources\modules\opencv_cont原创 2017-06-27 17:30:23 · 31906 阅读 · 4 评论