摘要: 前一段时间,我一直在制作OpenCV基础知识的课件,因为一方面我感觉现有教程需要一个系统核心;另一方面我也反省自己对基础知识是否掌握牢靠了,千万不能误人子弟。那么课件的制作,包括内容的顺序,主要还是基于《learningOpenCV3》的。结合制作课件,我对《learningOpenCV3》书后的习题较为仔细的解决,并且push到了Github上https://github.com/oreillymedia/Learning-OpenCV-3_examples。有push当然也就有commit了,可喜的是这个commit是由Opencv类库的创始者,也是《learningOpenCV3》这本书的作者Gary操作的。一来二去混熟了,我就问Gary这书怎么还没中文版呀?他说开始搞了呀。我就说我能不能加入呀?他说行。要了我的email,接着联系上了清华出版社,也看到了部分初稿。由于书已经翻译的差不多了,我就作为reviewer加入,主要是看一看语法和程序方面的错误。review的过程,实际上还是一个重复学习的过程,很多在以前学习过程中一笔带过,或者看不懂就拉倒的地方,现在就必须认真仔细地来看阅读全文
posted @ 2017-08-14 21:39 jsxyhelu 阅读(552) 评论(5) 编辑
摘要: Csharp如何调用基于Opencv编写的类库文件(Dll)是一个广泛讨论的问题。 经过长时间探索后,我终于进行了很好的实现。源代码公开,并且包括一个实际调用的例子: 希望你能够在这里找到自己想要的东西!阅读全文
posted @ 2017-04-04 20:25 jsxyhelu 阅读(1042) 评论(3) 编辑
摘要: 编写带界面的图像处理程序,选择opencv+mfc是一种很好的选择;在读取摄像头数据方面,网上的方法很多,其中shiqiyu的camerads的方法是较好的。 基于现有资料,通过在实际项目中的积累,我总结出来一套结合opencv和mfc的摄像头采集框架。具有以下特点: 1、基于directshow,兼容性好,速度快。到目前为止,无论是工业相机还是普通相机,没发现不兼容的; 2、摄像头部分通过线程读取,保证界面的运行流畅; 3、框架经过多次打磨,已经比较稳定,不会出现异常错误;代码简洁明了,方便复用。阅读全文
posted @ 2016-10-05 07:45 jsxyhelu 阅读(2680) 评论(0) 编辑
摘要: 这是一个典型的“机器视觉”应用。其中,答题卡的样式可以是由自己来设置的,图片的获取方式提到了可以是“手机拍照、相机拍照”这种比较方便的方式;本例的一个特殊的要求是:你可以识别不出来,但是你不能识别错误,这是项目的特殊要求。这里是我的思考和实现。阅读全文
posted @ 2015-01-18 14:07 jsxyhelu 阅读(6789) 评论(21) 编辑
摘要: <!-- p, li { white-space: pre-wrap; } --> <!--StartFragment-->#ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> //新添加 #include <opencv2阅读全文
posted @ 2017-11-16 15:02 jsxyhelu 阅读(14) 评论(0) 编辑
摘要: 这篇博客就是在PI上直接写出来的!cheers!! PI3的性能已经非常强劲,而作为一个能够独立运行的运算单元,使用它来做图像处理,将是非常适合的。为了挖掘机器的最大潜能,我没有采用比较常见的python等方法,而是直接使用c++实现相关算法,同时使用QT实现GUI操作。这篇文章就是最基本的环境搭建阅读全文
posted @ 2017-11-15 15:11 jsxyhelu 阅读(67) 评论(1) 编辑
摘要: 特征点识别在以下6个方面进行比较 1、算法匹配速度比较 (ubc) 测试方法:在相同的匹配环境下,即使用同样配置的计算机,对相同的一对图像进行比较,测试算法的执行时间 2、旋转变换鲁棒性比较 (bark) 测试方法:对同一图像进行一定角度的旋转,旋转角度逐步递增,旋转后的图像逐一与原始图像进行匹配,比较能够正确匹配的特征点对数,并观察正确匹配对数的变化幅度 3、模糊变换鲁棒性比较 (bikes) 测试方法:对同一图像用不同的高斯核进行模糊处理,模糊处理后的图像逐一与原始图像进 行匹配,比较能够正确匹配的特征点对数,并观察正确匹配对数的变化幅度 4、光照变换鲁棒性比较 (leuven) 测试方法:对同一图像的亮度进行改变,逐 渐降低亮度,改变亮度后的图像逐一与原始图像进行匹配,比较能够正确匹配的特征点对数,并观察正确匹配对数的变化幅度 5、尺度变换鲁棒性阅读全文
posted @ 2017-11-14 20:16 jsxyhelu 阅读(253) 评论(0) 编辑
摘要: 代码:https://files.cnblogs.com/files/jsxyhelu/main.zip 一、基本概念: 特征点提取在“目标识别、图像拼接、运动跟踪、图像检索、自动定位”等研究中起着重要作用; 主要算法包括: 特征点识别主要流程为: 1、检测关键点、提取描述向量和特征匹配; 2、通过阅读全文
posted @ 2017-11-10 11:18 jsxyhelu 阅读(133) 评论(0) 编辑
摘要: 采用pca分析方法,获得图像的中点和主要方向。阅读全文
posted @ 2017-10-19 09:22 jsxyhelu 阅读(203) 评论(0) 编辑
摘要: 阅读全文
posted @ 2017-10-11 10:16 jsxyhelu 阅读(130) 评论(0) 编辑
摘要: multibandblend是目前图像融和方面比较好的方法。原始论文为《a multivesolution spline with application to image mosaics 》,可以用百度学术找到。原始论文中采用的方法是直接对带拼接的两个图片进行拉普拉斯金字塔分解,而后一半对一半进行融合。国人也有许多改进,比如“首先采用拉普拉斯分辨率金字塔结构,将输入的图像分解成一系...阅读全文
posted @ 2017-10-10 08:15 jsxyhelu 阅读(27) 评论(0) 编辑
摘要: 前面我们对sift算法的流程进行简要研究,那么在OpenCV中,sift是如何被调用的?又是如何被实现出来的了? 特别是到了3.0以后,OpenCV对特征点提取这个方面进行了系统重构,那么整个代码结构变成了什么模样?阅读全文
posted @ 2017-10-05 07:12 jsxyhelu 阅读(60) 评论(0) 编辑
摘要: SIFT(Scale-Invariant Feature Transform)是一种具有尺度不变性和光照不变性的特征描述子,也同时是一套特征提取的理论,首次由D. G. Lowe于2004年以《Distinctive Image Features from Scale-Invariant Keypoints[J]》发表于IJCV中。开源算法库OpenCV中进行了实现、扩展和使用。阅读全文
posted @ 2017-09-25 13:38 jsxyhelu 阅读(39) 评论(0) 编辑
摘要: 一、基础最初由Rosten和Drummond [Rosten06]提出的FAST(加速段测试的特征)特征检测算法是基于将点P与其包围圆内的点集的直接比较的思想。基本思想是,如果附近的几个点与P类似,那么P将成为一个很好的关键点。点P是FAST算法的关键点候选者。 影响P分类的点的圈由p周围的圆确定。 在这种情况下,该圆上有16个像素,这里编号为0-15。具体的算法在这里并没有说明。二、函数clas...阅读全文
posted @ 2017-09-15 13:27 jsxyhelu 阅读(50) 评论(0) 编辑