《OpenCV3编程入门》学习笔记
本系列专栏博客主要以浅墨的《OpenCV3编程入门》为基础,实现了书中的大部分代码,添加了自己的一些理解,且不完全遵循书中的内容讲解。博文并不一味重复书中所讲的一些内容,建议结合书本来看。欢迎大家多多交流,批评指正。
NodYoung
专注于机器人,计算机视觉,机器学习
展开
-
计算机视觉初级部分知识体系
这两天总结了一下自己在计算机视觉初级部分的知识框架,整理如下。 个人所学并不全面(比如图像频域方面了解就比较少),仅做参考。图像点(pixel值)运算直方图;线性/非线性变换;灰度均衡化/规定化;H-S直方图图像几何变换平移、旋转、镜像、缩放(图像金字塔,图像多尺度表达的一种方法,高斯金字塔、拉普拉斯金字塔);仿射变换空间域滤波线性滤波 均值滤波、高斯滤波非线性滤波原创 2017-01-15 14:33:53 · 3367 阅读 · 0 评论 -
《OpenCV3编程入门》学习笔记番外篇之OpenCV-Python使用
之前一直是使用OpenCV的C++接口来编程,由于python功能强大,现在也有很多人使用OpenCV-Python来完成图像处理的一些工作,因为其比较方便。 这两天由于要为object detection by learning 做一些准备工作,其实也就是把视频样本转换为图片,然后给每一个图片打标签。关于第2步可以直接使用github上的开源代码labelImg 来完成。第1步自己用OpenCV原创 2016-11-08 10:27:03 · 2919 阅读 · 0 评论 -
《OpenCV3编程入门》学习笔记番外篇之目标跟踪object tracking
这里介绍一下使用OpenCV进行目标跟踪的方法,之前用过一点。OpenCV中目标跟踪的一些比较新的方法(比如MIL、KCF、TLD等)都在opencv_contrib库里,所以首先你需要安装它,详见Opencv3.1.0+opencv_contrib配置及使用SIFT测试 。 关于tracking这一块可参考Opencv的官网 Tracking API 、Introduction to OpenC原创 2016-11-08 09:54:11 · 6047 阅读 · 1 评论 -
《OpenCV3编程入门》学习笔记番外篇之图像形态学处理
关于图像形态学在《OpenCV3编程入门》学习笔记六:图像处理 中涉及到过,但给的例程不是特别好。这里再给出一个比较直观的例子。 源码:#include<opencv2/opencv.hpp>#include<iostream>using namespace cv;using namespace std;Mat g_srcImage, g_dstImage; //原始图和效果图int g原创 2016-11-06 16:32:07 · 1571 阅读 · 0 评论 -
《OpenCV3编程入门》学习笔记之官方例程学习
OpenCV官方资料做的相当完善,其中官方例程就是非常好的参考资料。 1. 其在...\opencv\sources\samples\cpp\tutorial_code 路径下,如图: 这里以video下的bg_sub.cpp为例,其作用时背景移除。注意要在属性中填写命令参数,如下: 2. 官网上也给了一些例程:Examples原创 2016-11-06 16:15:31 · 4194 阅读 · 2 评论 -
《OpenCV3编程入门》学习笔记之书本资源汇总
这里主要汇总一下书中的图片素材和函数清单。 函数清单: 图片素材: poster_book.jpg poster_book_1.jpg poster_book_2.jpg poster_building.jpg poster_building_1.jpg poster_building_2.jpg poster_car.jpg post原创 2016-11-06 15:01:30 · 3266 阅读 · 0 评论 -
《OpenCV3编程入门》学习笔记十一:特征点检测与匹配
一:内容介绍 本节主要介绍OpenCV的imgproc模块的特征点检测与匹配部分: 1. surf特征点检测、描述 2. 特征点匹配方法BruteForceMatcher和FlannBasedMatcher 3. 图像间关键点的变换findHomography与映射perspectiveTransform 4. ORB特征 二:学习笔记 1. 这一章相对还是挺实用的,特别对于有纹原创 2016-11-06 14:03:01 · 5403 阅读 · 0 评论 -
《OpenCV3编程入门》学习笔记十:角点检测
一:内容介绍 本节主要介绍OpenCV的imgproc模块的角点检测(Feature Detection)部分: 1. Harris角点检测 2. Shi-Tomasi角点检测 3. 亚像素级角点检测 二:学习笔记 1. harris角点还是挺常见的,Harris角点 这篇文章介绍的比较好。 ————————–补充于16/11/10————————————- 昨天帮老师做几页原创 2016-10-21 15:04:41 · 4906 阅读 · 0 评论 -
《OpenCV3编程入门》学习笔记九:直方图与匹配
一:内容介绍 本节主要介绍OpenCV的imgproc模块的直方图与模板匹配部分: 1. 直方图的计算与绘制 2. 直方图对比 3. 反向投影 4. 模板匹配 二:学习笔记 1. 关于图像的HSV格式,平常老是用RGB了解这个较少,参见:HSL和HSV色彩空间 , 如何通俗地解释色彩三要素:色相、明度、纯度? , 什么是色像?什么是饱和度?什么是色温?什么是色调呢? 。原创 2016-10-20 16:59:36 · 2561 阅读 · 0 评论 -
《OpenCV3编程入门》学习笔记八:图像轮廓与分割
一:内容介绍 本节主要介绍OpenCV的imgproc模块的图像轮廓与分割部分: 1. 查找并绘制轮廓 2. 寻找物体的凸包 3. 使用多边形将轮廓包围 4. 图像的矩 5. 分水岭算法 6. 图像修补 二:学习笔记 1. findContours()函数查找图像轮廓和canny检测边缘、hough检测直线,这些都非常使用(参见:OpenCV成长之路(8):直线、轮廓的提取原创 2016-10-19 19:51:00 · 6089 阅读 · 0 评论 -
《OpenCV3编程入门》学习笔记七:图像变换
一:内容介绍本节主要介绍OpenCV的imgproc模块的图像变换部分: 1. 边缘检测:canny算子,sobel算子,高斯拉普拉斯算子(LOG) 2. 霍夫变换 3. 重映射 4. 仿射变换 5. 直方图均衡化 二:学习笔记1.造成边缘的原因景深不连续,反射率不连续(如表面材质的改变),光照不连续(阴影等),如下图 2 . 边缘检测的一般步骤:滤波(因为导数对噪声比较敏感,一般原创 2016-10-19 10:53:56 · 2097 阅读 · 0 评论 -
《OpenCV3编程入门》学习笔记六:图像处理
中间隔了好长时间没写啊,这段也没怎么用。一:内容介绍本节主要介绍OpenCV的imgproc模块的图像处理部分: 1. 线性滤波:均值滤波与高斯滤波 2. 非线性滤波:中值滤波、双边滤波 3. 图像形态学:腐蚀与膨胀,开运算、闭运算,形态学梯度,顶帽、黑帽 4. 漫水填充 5. 图像金字塔及图片尺寸缩放 6. 阈值化 二:学习笔记方框滤波(box filter)是不一定归一化的,而这原创 2016-10-18 19:51:58 · 1969 阅读 · 0 评论 -
《OpenCV3编程入门》学习笔记五:core组件进阶
一:内容介绍 本节主要介绍OpenCV的core模块基础部分: 1. 访问像素的一些方法 2. 图像混合的方法 3. 图像对比度、亮度调整 4. 离散傅里叶变换 5. XML和YAML文件的读取写入 二:学习笔记 1. 本章仍是介绍了一些core模块的一些比较简单的应用。 2. 在本章的大部分内容中,都透着用数字看待图像的观点。面对一副图像,别人看到的是美丽的画面及展示的内容原创 2016-09-27 16:03:55 · 2016 阅读 · 1 评论 -
《OpenCV3编程入门》学习笔记四:初探core组件
一:内容介绍本节主要介绍OpenCV的core模块基础部分: 1. Mat类的用法,及OpenCV中其他常用的数据类型 2. 基本绘图操作二:学习笔记1.core模块本章节开始介绍OpenCV的core模块http://docs.opencv.org/3.1.0/d0/de1/group__core.html ,重点讲了些Basic structures中的一小部分内容http://docs.原创 2016-09-26 16:57:13 · 2283 阅读 · 0 评论 -
《OpenCV3编程入门》学习笔记三:HighGUI图形用户界面
一:内容介绍 本节主要介绍OpenCV的HighGUI模块,并分享几个例子: 1. 用imwrite函数生成png透明图 2. 综合示例程序:图像的载入、显示与输出 3. 为程序界面添加滑动条 4. 鼠标操作 二:学习笔记 1. 此章节只是介绍OpenCV的一些HighGUI使用方法,并不涉及什么理论部分。关于HighGUI大家可参考官网HighGUI模块 http://docs.原创 2016-09-20 09:38:26 · 7561 阅读 · 0 评论 -
《OpenCV3编程入门》学习笔记二:快速上手OpenCV
一:内容介绍 本节主要介绍以下内容: 1. OpenCV3基本架构 及 官网使用说明 2. 官方例程介绍 及 简单例程赏析 二:学习笔记 1. OpenCV3的基本架构在书本P7页有介绍,介绍的挺好,我们也可以从http://docs.opencv.org/3.1.0/ 看出:OpenCV3是按模块组织的,其中又分Main modules和Extra modules ,书中也只是讲了常原创 2016-09-17 19:40:31 · 4138 阅读 · 0 评论 -
《OpenCV3编程入门》学习笔记一:邂逅OpenCV
一:内容介绍本节主要介绍以下内容: 1. OpenCV3环境搭建 2. 快速上手尝试:图像显示、读取并播放视频、调用摄像头采集图像二:学习笔记1. 环境配置在OpenCV3中,项目架构发生了一些变化,除了主仓库外新增了opencv_contrib仓库,里面包含人脸识别、新的边缘检测、SIFT算子、新的光流和追踪算法等。个人建议最好是配置一下opencv_contrib库,毕竟我们还是尽量跟随潮流原创 2016-09-14 10:50:10 · 10761 阅读 · 1 评论