
OpenCV
文章平均质量分 91
holybin
这个作者很懒,什么都没留下…
展开
-
OpenCV自带方法遍历目录下文件
以前一直用C语言遍历目录下图像文件来获取图像名称,才知道opencv自带的方法原创 2014-05-14 11:51:28 · 12296 阅读 · 10 评论 -
OpenCV中feature2D学习——自定义角点检测函数
概述除了之前文章所说的利用Harris进行角点检测和利用Shi-Tomasi方法进行角点检测外,也可以自己制作角点检测的函数:使用cornerEigenValsAndVecs()函数和minMaxLoc()函数结合来模拟Harris角点检测,或者使用cornerMinEigenVal()函数和minMaxLoc()函数结合来模拟Shi-Tomasi角点检测,最后特征点选取的判断条件要根据实际情况进行选择。原创 2014-11-10 19:15:52 · 6670 阅读 · 0 评论 -
OpenCV中feature2D学习——亚像素级角点检测(cornerSubPix)
概述除了利用Harris进行角点检测和利用Shi-Tomasi方法进行角点检测外,还可以使用cornerEigenValsAndVecs()函数和cornerMinEigenVal()函数自定义角点检测函数。如果对角点的精度有更高的要求,可以用cornerSubPix()函数将角点定位到子像素,从而取得亚像素级别的角点检测效果。cornerSubPix()函数(1)函数原型原创 2014-11-14 20:45:29 · 25955 阅读 · 6 评论 -
OpenCV中的模板匹配方法及其应用
模板匹配(TemplateMatching)就是在一幅图像中寻找和模板图像(template)最相似的区域,该方法原理简单计算速度快,能够应用于目标识别,目标跟踪等多个领域。OpenCV中对应的函数为matchTemplate或cvMatchTemplate(参考opencvdoc),简单介绍下:1、函数原型C++: void matchTemplate(InputArray image,原创 2014-10-28 16:55:38 · 17830 阅读 · 9 评论 -
OpenCV中feature2D学习——Shi-Tomasi角点检测
概述除了之前文章所说的利用Harris进行角点检测,还可以利用Shi-Tomasi方法(相关论文)进行角点检测,该方法也可以用于初始化基于特征点的目标跟踪。函数实现该方法在opencv中的具体实现是在函数goodFeaturesToTrack()中,其原型为:C++: void goodFeaturesToTrack(InputArray image, OutputArray corners, int maxCorners, double qualityLevel, double minDistan原创 2014-11-08 21:50:25 · 5602 阅读 · 0 评论 -
“未声明的标识符:SurfFeatureDetector”问题解决办法
在VS中使用opencv2.4.X版本的时候,如果使用SurfFeatureDetector(或者SiftFeatureDetector)做特征点检测的时候,按照官方文档上的示例代码include头文件为:opencv2/features2d/features2d.hpp,则会出现如下报错:errorC2065: “SurfFeatureDetector”: 未声明的标识符。 1、实际上2原创 2014-11-15 12:41:55 · 17210 阅读 · 0 评论 -
OpenCV中feature2D学习——SURF和SIFT算子实现特征点检测
在opencv的features2d中实现了SIFT和SURF算法,可以用于图像特征点的自动检测。具体实现是采用SurfFeatureDetector/SiftFeatureDetector类的detect函数检测SURF/SIFT特征的关键点,并保存在vector容器中,最后使用drawKeypoints函数绘制出特征点。实验所用环境是opencv2.4.0+vs2008+win7,测试图片原创 2013-12-10 20:09:27 · 17350 阅读 · 4 评论 -
OpenCV中feature2D学习——SIFT和SURF算子实现特征点提取与匹配
概述 之前的文章SURF和SIFT算子实现特征点检测简单地讲了利用SIFT和SURF算子检测特征点,在检测的基础上可以使用SIFT和SURF算子对特征点进行特征提取并使用匹配函数进行特征点的匹配。具体实现是首先采用SurfFeatureDetector检测特征点,再使用SurfDescriptorExtractor计算特征点的特征向量,最后采用BruteForceMatcher暴力匹原创 2013-12-17 09:30:40 · 8102 阅读 · 3 评论 -
OpenCV中feature2D学习——BFMatcher和FlannBasedMatcher
Brute Force匹配和FLANN匹配是opencv二维特征点匹配常见的两种办法,分别对应BFMatcher(BruteForceMatcher)和FlannBasedMatcher。BFMatcher的构造函数如下:C++: BFMatcher::BFMatcher(int normType=NORM_L2, bool crossCheck=false )原创 2014-11-08 21:44:54 · 30386 阅读 · 3 评论 -
OpenCV中feature2D学习——SIFT和SURF算法实现目标检测
概述 之前的文章SURF和SIFT算子实现特征点检测和SURF算子实现特征点提取与匹配简单地讲了利用SIFT和SURF算子检测特征点,并且对特征点进行特征提取得到特征描述符(descriptors),在此基础上还可以进一步利用透视变换和空间映射找出已知物体(目标检测)。这里具体的实现是首先采用SURF/SIFT特征点检测与特征提取,然后采用FLANN匹配法保留好的匹配点,再利用fi原创 2014-05-22 18:48:03 · 12065 阅读 · 1 评论 -
OpenCV中feature2D学习——FAST特征点检测
在前面的文章《OpenCV中feature2D学习——SURF和SIFT算子实现特征点检测》中讲了利用SIFT和SURF算子进行特征点检测,这里尝试使用FAST算子来进行特征点检测。 FAST的全名是:Features from Accelerated Segment Test,主要特点值计算速度快,比已知的其他特征点检测算法要快很多倍,可用于计算机视觉应用的实时场景。目前以其高计算效率原创 2015-03-29 23:12:09 · 19028 阅读 · 0 评论 -
OpenCV中feature2D学习——FAST特征点检测与SIFT/SURF/BRIEF特征提取与匹配
在前面的文章《OpenCV中feature2D学习——FAST特征点检测》中讲了利用FAST算子进行特征点检测,这里尝试使用FAST算子来进行特征点检测,并结合SIFT/SURF/BRIEF算子进行特征点提取和匹配。I、结合SIFT算子进行特征点提取和匹配由于数据类型的不同,SIFT和SURF算子只能采用FlannBasedMatcher或者BruteForceMatcher来进行匹配(参原创 2015-03-31 14:02:03 · 12306 阅读 · 1 评论 -
OpenCV中feature2D学习——Harris角点检测
在计算机视觉中,我们通常需要找出两幅图像的匹配点(matching points),因为如果能找到两幅图像如何相关,就能利用两幅图像一起来提取出它们所包含的信息。当我们说匹配点时实际上是指在一般情形下能够很容易被识别的一些特征,这些特征被叫做feature,他们所具有的最鲜明的特点就是具有唯一可识别性(uniquely recognizable)。图像的feature类型通常包括边界(edges)、角点(corners,也叫兴趣点)、区块(blobs,也叫兴趣区域)。原创 2014-11-08 21:48:14 · 4398 阅读 · 0 评论 -
OpenCV图像中的数据类型
OpenCV里面的许多数据结构为了达到內存使用的最优化,通常都会给它最小上限的空间来分配变量。举个例子,一般标准的图片为RGB格式,它们的格式为每一个通道(R/G/B)的大小为8bits,范围为0~255。假如每一个通道都为int类型,那么一个通道整整浪费了24bits的空间;假设有个640*480的BMP文件存储在內存,那整整浪费了640*480*3*(32-8)bits的內存空间,总共浪费了2原创 2014-09-25 23:08:34 · 4392 阅读 · 0 评论 -
OpenCV中Hough直线检测和圆检测
霍夫变换是图像处理中的一个检测直线、圆等简单几何形状的方法。它最初是用于在二值化的图像中进行直线检测的。1、霍夫直线检测(1)基本理论Hough直线检测的基本理论是二值图像中的任何点都可能是一些候选直线集合的一部分,所选的参数方式是每一行代表极坐标中的一个点,并且隐含的直线是通过象征点的,垂直于原点到此点的半径,即:检测的过程可以看成从图像中的一个个像素点出发,寻找每个点成为直原创 2014-03-01 18:31:53 · 18435 阅读 · 0 评论 -
OpenCV2.4.8新鲜出炉!
在2013年最后一天发现OpenCV2.4.8版本推出了,不得不佩服辛勤的开发者们!新版本主要增强了对于并行计算的支持(CUDA),以及对于OpenCL的支持,增加了对于Java开发和Android更高版本的支持,修正了一些BUG。小弟不才还在体验研究中,貌似有很多很不错的新功能。(1)这个是各个版本的下载链接:http://opencv.org/downloads.html,或者这个:htt原创 2014-01-06 20:29:52 · 10064 阅读 · 0 评论 -
OpenCV中矩阵类详解之三:CvMat,Mat和IplImage之间的转化和拷贝
Mat的优势是Mat自动内存管理,不需要显式释放(当然也可以手动调用release()方法强制Mat矩阵数据释放)CvMat则需要调用cvReleaseMat(&cvmat)来释放//CvMat*之间的复制:REAL COPYCvMat* a = cvCloneMat(b);//Mat之间的复制:pseudo COPY - 更改a,b,c的任意一个都会对另外2个产生原创 2014-01-02 16:28:41 · 41098 阅读 · 5 评论 -
OpenCV中矩阵类详解之一:Mat
Mat::eye返回一个恒等指定大小和类型矩阵。C++: static MatExpr Mat::eye(int rows, int cols, inttype)C++: static MatExpr Mat::eye(Size size, int type)参数rows –的行数。cols– 的列数。size –替代矩阵大小规格Size(cols, rows)的方法。转载 2014-01-02 09:34:01 · 41953 阅读 · 1 评论 -
OpenCV中随机森林的实现与字符识别例子
之前一篇文章简单介绍了随机森林,并且给出来了一些matlab的随机森林的资源原创 2014-05-13 15:56:32 · 10260 阅读 · 0 评论 -
opencv2.0版本中adaboost的一个bug
最近在看opencv中adaboost的源码的时候,发现在实现文件..\OpenCV2.0\apps\traincascade\cascadeclassifier.cpp中的一个问题:(1)CvCascadeClassifier类的成员函数train函数中有这么一句:此句代码的本意是用传入的命令行参数_posFilename、_negFilename和_cascadeParams初原创 2014-01-07 16:29:05 · 1783 阅读 · 0 评论 -
OpenCV浅析与相关资源
总结:1、对于预处理,一般就是去除或者降低噪声,光照归一化,亮度归一化,模糊化,锐化,膨胀,腐蚀、开闭等这些操作。而对于这些操作,OpenCV分别提供了相应API函数。而光照的预处理,OpenCV提供了一个直方图均衡化的API,后续可能会提供一些gammar矫正之类的函数。详见,冈萨雷斯,《数字图像处理》一书 2、对于特征提取,OpenCV里面提供了一些特征描述的API,比原创 2014-01-03 09:53:40 · 1762 阅读 · 0 评论 -
OpenCV中矩阵类详解之二:CvMat
综述OpenCV中矩阵CvMat是一个基础的数据结构,在CvCore中(cxcore.h或者core.hpp);OpenCV将向量作为1维矩阵处理,矩阵按行存储,每行有若干字节的校整;在较早版本里面,CvMat使用的是C语言实现的struct,较新的版本里面有C++实现的class(Mat类)。CvMat的定义typedef struct CvMat { int type;原创 2014-01-02 11:26:59 · 4190 阅读 · 1 评论 -
MFC中使用OpenCV显示图像
文章内容介绍在MFC对话框里使用Picture控件来显示和处理图像。原创 2014-05-15 02:10:58 · 5404 阅读 · 3 评论 -
opencv将图像数据写入二进制(.dat)文件
在图像处理的过程中,有些时候需要从dat文件读取数据或者将数据原创 2014-08-02 11:15:20 · 12393 阅读 · 3 评论 -
OpenCV使用不同方式访问图像数据
OpenCV对图像数据的访问方式如下代码所示(opencv2.3yi)原创 2014-09-25 23:50:16 · 1245 阅读 · 0 评论 -
OpenCV中feature2D学习——ORB和BruteForceMatcher
一、ORB详细介绍(该部分转自:http://www.cvchina.info/2011/07/04/whats-orb/) ORB是是ORiented Brief的简称。ORB的论文:http://www.willowgarage.com/sites/default/files/orb_final.pdf首先介绍Brief: Brief是Binary Robust Independent El原创 2015-09-28 08:10:41 · 11244 阅读 · 1 评论