
OpenCV
文章平均质量分 70
Witnesses
在校机器视觉方向研究生。
展开
-
OpenCV中使用面具等非矩形图像
在《OpenCV实例精解》一书中,有一个识别人脸然后加上面具的例子,刚开始看的时候就有一个疑惑,面具的图像是矩形的,糊到脸上要怎么使用掩膜呢。后来发现例子里面用的方法很巧妙,这里重新把面具处理部分的代码总结一下: Mat faceMaskSmall = imread("facemask.jpg"); if ( !faceMaskSmall.data )原创 2017-04-07 16:45:34 · 1501 阅读 · 7 评论 -
SURF特征提取算法原文翻译与理解(下)
上一部分主要是针对特征点的提取,下面的内容是特征点的描述,并在最后总结一下全部的步骤。4.SURF特征描述子 SURF算法使用的描述子跟SIFT相比复杂度更低。第一步是对每个兴趣点,基于其圆形区域内的信息,确定一个可重复的方向。第二步在兴趣点上构造一个与选定方向对齐的方框,从这个方框中提取SURF描述符。这两步下面会解释。最后,提出一种直立版本的描述符(U-SURF),它并不原创 2017-06-04 11:38:36 · 4067 阅读 · 0 评论 -
SURF特征提取算法原文翻译与理解(上)
SURF的优点以及与其他特征提取算法的比较前面总结过了,而且通过实际的使用发现算法的稳定性着实很好,这里分享一下对Speeded Up Robust Features原文的翻译和理解,文章是去年翻译的,那时候刚开始看特征提取所以翻译的比较细,才疏学浅,有的地方可能理解的不对,欢迎大家拍砖。分成两部分,第一部分是特征点的提取,第二部分是特征点的描述,以及整个方法的总结。正文开始: 1.引言原创 2017-06-02 22:27:18 · 23629 阅读 · 0 评论 -
梳理OpenCV各立体匹配算法的分类和理论基础(更新中)
最近总有一个困惑,论文或者说研究中的立体匹配算法和OpenCV中实现的立体匹配算法有什么对应关系,特别是经常看到资料中一谈到OpenCV立体匹配函数,就是BM、SGBM和GC成套的出现,那么这三个算法的理论来源是什么,它们三个是什么样的“江湖地位”,OpenCV还有没有实现其他算法没有被介绍,在这里,对这些问题做个小总结。遗漏的地方欢迎大家批评补充。 1.立体匹配算法分类:从算法本身的角原创 2017-05-19 16:12:47 · 5738 阅读 · 0 评论 -
BM、GC、SGBM三种算法的比较和BM在OpenCV3下的参数设置
第一部分BM、GC和SGBM算法的性能比较转自:http://blog.youkuaiyun.com/chenyusiyuan/article/details/5967291,其中原博主推荐的Stefano Mattoccia大神的讲义Stereo Vision:algorithms and applications,我看了以后觉得非常受用,讲的非常条理全面,里面的参考文献也很经典。第二部分为原创,主要是原创 2017-05-16 19:35:07 · 19455 阅读 · 0 评论 -
整理使用SVM实现分类的步骤
之前SVM进行项目中待识别物体的分类,过去挺长时间结果有点生疏了,这里梳理一下。因为当初是根据《深入理解OpenCV》自动分类的例程,所以这里仍以此为例。这里只是列出了SVM使用环节的代码,而且本来就是一个小例子,其中测试集训练集的选取、特征的选择等都是最简单的考虑,真正应用,要进行更加全面的考虑。 这个例程是从传送带中找到螺母、螺钉和垫圈,使用的特征是外轮廓的长宽比和面积的大小,也就是原创 2017-05-25 22:37:28 · 7681 阅读 · 0 评论 -
OpenCV3.2+VS2013+Tesseract3.02.02配置
分享一下Tesseract3.02.02版本在Windows下的配置。我的环境VS2013+win8 64bit+OpenCV3.2。 需要下载:tesseract-orc-setup-3.02.02.exe和tesseract-3.02.02-win32-lib-include-dirs.zip,这个比较好下载。 安装和配置步骤: (1)先执行tessera原创 2017-05-12 18:45:10 · 2806 阅读 · 0 评论 -
总结一种使用OpenCV进行双目校正的方法其流程和所用函数
原创 2017-05-11 15:30:22 · 1022 阅读 · 0 评论 -
Qt+OpenCV实时显示在地图空间中的位置
有个类似于自动行驶小车的项目,使用摄像头检测贴在地上的地标,并在上位机实时显示当前小车所处的位置,上位机是Ubuntu系统。 做上位机的界面用的是Qt,里面也配置好了OpenCV,用起来很方便,现在要解决的是如何设计一个地图,并且每次实时显示当前的位置。因为没有可借鉴的资料,我就根据激光雷达那个数据界面的启发,想到办法,可能比较笨,如果大家有更好的方法,请务必指教!我考虑的方法是先把地上原创 2017-04-15 19:47:40 · 3706 阅读 · 2 评论 -
静态相机检测运动物体
最近学习了视频监控方面的小例子,利用静态放置的相机检测运动物体,并且有简单背景差分法和简单帧差值法两种方法的OpenCV实现,算是作为对OpenCV的一个拓展了解把。 第一种简单背景差分法原理简单。背景差分认为图像分为前景和背景,对于一个固定的场景,先做一个背景的模板,然后对于每一帧新图像,计算当前帧与背景图像的差值,得到前景,前景就对应这移动的物体或人。但是简单的背景差分法有一个问题,原创 2017-04-19 18:26:00 · 2053 阅读 · 0 评论 -
OpenCV分水岭算法中标记图的妙用
分水岭算法不是第一次看见了,因为项目中没用过,就一直没详细看里面标记图的用法,而且感觉看过的OpenCV书里面解释的都很不明白,其实是自己的学习方法有问题,这个问题说简单也很简单,一步步的试验看看中间输出结果,还有什么难的呢。 下面进入正题,首先这个标记图作用是什么(分水岭算法原理这里就不说了),在一些分割算法如watershed和grabCut算法中,如果直接对原图进行处理,那么将图像原创 2017-04-12 22:06:38 · 3298 阅读 · 0 评论 -
OpenCV实现基于Zernike矩的亚像素边缘检测
在做物体检测时,由于成本和应用场合的限制,不能够一味地增加相机的分辨率,或者已经用了分辨率很高的相机,但是视野范围很大,仍然无法实现很高的精度,这时就要考虑亚像素技术,亚像素技术就是在两个像素点之间进行进一步的细分,从而得到亚像素级别的边缘点的坐标(也就是float类型的坐标),一般来说,现有的技术可以做到2细分、4细分,甚至很牛的能做到更高,通过亚像素边缘检测技术的使用,可以节约成本,提高识别精原创 2017-04-09 17:17:16 · 24025 阅读 · 138 评论