1、

第三部分 掌握 imgproc 组件

第六章 图像处理

6.1、线性滤波:  Pdf.P170

Pdf.P171

平滑处理(smoothing)(模糊处理(bluring))-- 使用频率很高 -- 用途:较少图像上的 噪点 / 失真。降低分辨率时,平滑处理是非常好用的方法。

图像滤波,指在尽量保留图像细节特征的条件下对目标图像的噪声进行抑制。

消除图像中的噪声成分 叫做 图像的 平滑化 / 滤波操作。... 因此 一个能降低高频成分的滤波器就能够减弱噪声的影响。

图像滤波 目的两个:(1)抽出对象的特征作为图像识别的特征模式;(2)为适应图像处理的要求,消除图像数字化时所混入的噪声。

对 滤波处理 的要求 两个:(1)不能损坏图像的轮廓及边缘等重要信息;(2)是图像清晰视觉效果好。

平滑滤波 -- 低频增强的空间域滤波技术 -- 目的两类:(1)模糊;(2)消除噪音。

空间域的 平滑滤波 一般采用简单平均法进行,就是求 邻近像元点 的 平均亮度值。邻域的大小 与 平滑的效果 直接相关,邻域越大 平滑的效果越好,但邻域过大,平滑也会使边缘信息损失的越大,从而使输出的图像变得模糊,因此 需合理选择 邻域的大小。

滤波器 形象的比喻:把滤波器想象成 一个包含 加权系数 的窗口,当使用这个滤波器 平滑处理图像时,就把这个窗口放到图像之上,透过这个窗口来看我们的图像。

Pdf.P172

线性滤波器:经常用于 剔除输入信号中不想要的频率 或者 从许多频率中选择一个想要的频率。

几种常见的线性滤波器:

低通滤波器:允许低频率通过;

高通滤波器:允许高频率通过;

带通滤波器:允许一定范围频率通过;

带阻滤波器:阻止一定范围频率通过 并且 允许其他频率通过;

全通滤波器:允许所有频率通过,仅仅改变相位关系;

陷波滤波器(Band-Stop Filter):阻止一个狭窄频率范围通过,是一种特殊带阻滤波器。

6.1.4、滤波和模糊

滤波 试将信号中 特定波段频率 滤除的操作,是抑制和放置干扰的一项重要措施。

滤波 分 低通滤波 和 高通滤波 两种:高斯滤波是指用高斯函数作为滤波函数的滤波操作,高斯低通滤波 就是 模糊,高斯高通滤波 就是 锐化。

6.1.5、邻域算子与线性邻域滤波  Pdf.P172

方框滤波(box Filter) -- BoxBlur函数 作用 使用方框滤波器(box Filter)来模糊一张图片,从src输入,送dst输出。

如果我们要在可变的窗口中计算像素从何,可以使用 integral()函数。

Pdf.P174 归一化就是 把要处理的量都缩放到一个范围内,比如(0, 1),以便统一处理和直观量化。而非归一化(Unnormalized)的方框滤波用于......。

均值滤波(邻域平均滤波) -- Blur函数  最简单的一种滤波操作,输出图像的每一个像素是核窗口内输入图像对应像素的平均值(所有像素加权系数相等),其实说白了它就是归一化后的方框滤波。blur 函数内部其实就是调用了一下 boxFilter 。

高斯滤波 -- GaussianBlur函数  线性平滑滤波,可以消除高斯噪声,广泛用于图像处理的减噪过程。通俗的讲,高斯滤波就是对整幅图像进行加权平均的过程,每一个像素点的值,都由其本身和邻域内的其他像素值经过加权平均后得到。具体操作:......。Pdf.P176

6.2、非线性滤波:

Pdf.P192 很多情况下,使用邻域像素的非线性滤波会得到更好的效果。比如 噪声是散粒噪声而非高斯噪声,即 图像偶尔会出现很大的值的会后,用高斯滤波器对图像进行模糊的话,噪声像素是不会被去除的,它们只是转换为更为柔和 但仍然可见的散粒

中值滤波 -- medianBlur函数  基本思想 ... ... ,该放大在去除 脉冲噪声。椒盐噪声 的同事又能保留图像的边缘细节。

中值滤波 只在一定的条件下可以克服常见线性滤波器(如 最小均方滤波、方框滤波器、均值滤波 等)带来的图像细节模糊,而且对滤除脉冲干扰及图像扫描噪声非常有效,也常用于保护边缘信息。 ... ... ,是非常经典的平滑噪声处理方法。

Pdf.P194 ... ... 但是对一些细节(特别是细、尖顶等)多的图像不太适合。

双边滤波 -- bilateralFilter函数  Pdf.P194 结合图像的空间邻近度和像素值相似度 的一种折中处理,同事考虑空域信息和灰度相似性,达到保边去噪的目的,具有 简单、非迭代、局部的特点。

好处 可以做边缘保护(edge preserving)。... ...

6.3、形态学滤波(1):

Pdf.P204 膨胀和腐蚀 主要功能:(1)消除噪声;(2)分割(isolate)出独立的图像元素,在图像中连接(join)相邻的元素;(3)寻找图像中的明显的极大值区域或极小值区域;(4)求出图像的梯度。

膨胀和腐蚀 是对图像中 白色部分(高亮部分)而言的,不是黑色部分。膨胀 是图像中高亮部分进行膨胀,类似于“领域扩张”,效果图拥有比原图更大的高亮区域;腐蚀 是原图中的高亮部分被腐蚀,类似于“领域被蚕食”,效果图拥有比原图更小的高亮区域。

膨胀(dilate)  Pdf.P205 就是 就局部最大值的操作。数学角度,膨胀/腐蚀操作 就是讲图像(或图像的一部分区域,称之为A)与 核(称之为B)进行卷积。

核 可以是任何形状和大小,... ...

腐蚀  Pdf.P206 膨胀和腐蚀(erode) 是相反的一对操作,∴ 腐蚀就是求局部最小值的操作。

6.4、形态学滤波(2):

Pdf.P216 形态学的高级形态,往往都是建立在腐蚀和膨胀这两个基本操作基础上的。

开运算  就是 先腐蚀 后膨胀的过程。 可以用来消除小物体,在纤细点处分离物体,并且在平滑较大物体的边界的同时不明显改变其面积。

闭运算  先膨胀 后腐蚀。 能够排除小型黑洞(黑色区域)。

形态学梯度(Morphological Gradient)  膨胀图与腐蚀图 之差。 对二值图形(?)进行这一操作可以将团块(blob)的边缘突出出来。可以用形态学梯度来保留物体的边缘轮廓。

顶帽(Top Hat)  又常被译为“礼帽”运算,是 原图像 与 “开运算”的结果图 之差。Pdf.P218

开运算 带来的结果是 放大了裂缝/局部低亮度的区域。因此 原图减去开运算后的图,得到的效果图 突出了比原图轮廓周围的区域更明亮的区域,且这一操作 与选择的核(?)的大小相关。

顶帽运算常常用来分离比邻近点亮一些的斑块。在一幅图像具有大幅的背景,而微小的物品比较有规律的情况下,可以使用顶帽运算进行背景提取。

黑帽(Black Hat) 闭运算的结果图 与 原图 之差。Pdf.P219

黑帽运算后的效果图 突出了比原图轮廓周围的区域更暗的区域,且这一操作和选择的核大小相关。

6.4.7 核心API函数:morphologyEx(),利用基本的膨胀管和腐蚀技术,来执行更加高级形态学变换,如 开闭运算、形态学梯度、“顶帽”、“黑帽”等。

6.4.9 综合实例:形态学滤波

6.5、漫水填充  Pdf.P231

两个版本的 floodFill()函数

漫水填充法  用特定的颜色色填充连通区域,通过设置可连通像素的上下限以及联通方式来达到不同条虫效果的方法。

漫水填充 常被用来 标记 / 分离 图像的一部分,以便对其进行进一步处理/分析,也可以用来从输入图像获取掩码区域,掩码会加速处理过程,或只处理掩码指定的像素点,操作的结果总是某个连续的区域。

以此填充算法为基础,类似PhotoShop的魔术棒选择工具就很容易实现了。... ...

6.6、图像金字塔与图片尺寸缩放  Pdf.P240

pyrUp():向上采样;pyrDown():向下采样;resize():缩放图像尺寸

图像金字塔,图像中多尺度表达的一种,最主要用于图像的分割,是一种以多分辨率来解释图像的有效但概念简单的结构。

图像金字塔,最初用于机器视觉和图像压缩,... ... 。

我们将一层一层的图像比喻成金字塔,层级越高,则图像越小,分辨越低。如 图6.55 6.56 所示。

常见的两种类型图像金字塔:

高斯金字塔(Gaussianpyramid)  Pdf.P242

拉普拉斯金字塔(Laplacianpyramid)  ZC:主要用于重建图像?还原图像?

Pdf.P244 图像金字塔 非常重要的一个应用就是 图像分割。

6.7、阈值化  Pdf.P254  对图像中的像素做出取舍与决策,直接剔除一些低于/高于一定值的像素。

阈值 可被视为最简单的图像分割方法。

第七章 图像变换

7.1、基于OpenCV的边缘检测  Pdf.P265

边缘检测的一般步骤:(1)滤波;(2)增强;(3)检测。

Canny()算子

Sobel()算子  Pdf.P270

Laplacian()算子  Pdf.P273

charr()滤波器  Pdf.P276

7.2、霍夫变换  Pdf.P284

霍夫线变换 HoughLines()、HoughLinesP()

霍夫园变换 HoughCircles()

在许多应用场景中需要快速准确地检测出直线/圆。其中一种非常有效的解决问题的方法是霍夫(Hough)变换,其为图像处理中 从图像中识别几何形状的基本方法之一,应用很广泛,也有许多改进算法。最基本的霍夫变换是从黑白图像中检测直线(线段)。

Pdf.P285 经典霍夫变换用来检测图像中的直线,后来霍夫变换扩展到任意形状物体的识别,多为圆和椭圆。

霍夫线变换 是一种用来寻找直线的方法。

OpenCV支持三种不同的霍夫线变换:标准霍夫变换(Standard Hough Transform, SHT)[ HoughLines() ]、多尺度霍夫变换(Multi-Scale Hough Transform, MSHT)、累计概率霍夫变换(Progressive Probabilistic Hough Transform, PPHT)[ HoughLinesP() ]。

霍夫圆变换

7.3、重映射  Pdf.P298 remap() 就是把衣服图像中某位置的像素放置到另一个图片指定位置的过程。

7.4、仿射变换(Affine Transformation 或 Affine Map)  Pdf.P306  warpAffine()、getRotationMatrix2D()

又称 仿射映射,是指 在几何中,一个向量空间进行一次线性变换并街上一个平移,变换为另一个向量空间的过程。他保持了二维图形的“平直性”和“平行性”。

“平直性”:直线经过变换之后依然是直线。

“平行性”:二维图形之间的相对位置关系保持不变。

一个任意的仿射变换都能表示为 乘以一个矩阵(线性变换)接着加上一个向量(平移)的形式。

用仿射变换来表示如下3种常见变换形式:

旋转 rotation(线性变换)

平移 translation(向量加)

缩放 scale(线性变换)

7.5、直方图均衡化  Pdf.P312 扩大图像的

第八章 图像轮廓与图像分割修复  Pdf.P320

8.1、查找并绘制轮廓

8.2、寻找物品的凸包

8.3、使用多边形将轮廓包围

8.4、图像的矩(ZC:这是什么?矩形?)

8.5、分水岭算法

8.6、图像修补

第九章 直方图与匹配  Pdf.P362

9.1、图像直方图概述

9.2、直方图的计算与绘制

9.3、直方图对比

9.4、反向投影

9.5、模板匹配

第四部分 深入 feature2d 组件

第十章 角点检测  Pdf.P394

10.1、Harris 角点检测

10.2、Shi-Tomasi 角点检测

10.3、亚像素级 角点检测

第十一章 特征检测与匹配  Pdf.P412

11.1、SURF特征点检测

11.2、SURF特征提取

11.3、使用FLANN进行特征点匹配

11.4、寻找已知物体

11.5、ORB特征提取

11.6、本章小结  Pdf.P447

2、

3、

4、

5、

6、

7、

8、

opencv实现三重点_OpenCV3编程入门.知识点相关推荐

  1. opencv 腐蚀 matlab,Opencv3编程入门笔记(4)腐蚀、膨胀、开闭运算、漫水填充、金字塔、阈值化、霍夫变换...

    19      腐蚀erode.膨胀dilate 腐蚀和膨胀是针对图像中的白色部分(高亮部分)而言的,不是黑色的.除了输入输出图像外,还需传入模板算子element,opencv中有三种可以选择:矩形 ...

  2. 【shell笔记】Linux Shell脚本编程入门知识点全面涵盖

    本文是我对白树明老师shell课程笔记的总结,课程链接:https://www.bilibili.com/video/BV1j541157Sr?from=search&seid=9757674 ...

  3. 【OpenCV学习】 《OpenCV3编程入门》--毛星云 01 邂逅OpenCV(OpenCV基本概念与基本架构) ROS系统上的运用(python实现)

    对 <OpenCV3编程入门>第一章的学习笔记:理解什么是计算机视觉,什么是OpenCV,以及其中的联系等等. PS:此书为2014年出版,opencv的版本和接口也与现在有些不一致了,作 ...

  4. php学了基本语法后应该怎么做,PHP编程入门的基本语法知识点总结

    PHP编程入门的基本语法知识点总结 想要学好PHP,怎么能够不了解基本的语法知识呢?下面是为大家搜集出来的有关于PHP编程入门的基本语法知识点总结,一起来学习一下吧! 一.何为php PHP,即&qu ...

  5. C++教程从0到1入门编程中知识点记录!

    C++教程从0到1入门编程中知识点记录! 一.C语言 1.冒泡排序 示例代码: #include <iostream> using namespace std; int main() { ...

  6. OpenCV 编程入门

    OpenCV 编程入门 美国伊力诺理工学院计算机科学系Gady Adam 翻译:Mensch 2006年11月22日 内容 简介 OpenCV概述 资料链接 OpenCV 命名约定 编译命令 C程序实 ...

  7. 【OpenCV3编程入门学习笔记】——第1章 邂逅OpenCV

    邂逅OpenCV 文章目录 邂逅OpenCV 前言 1.1 OpenCV周边概念认知 1.1.1 图像处理.计算机视觉与OpenCV 1.1.2 OpenCV概述 1.1.3 起源及发展 1.1.4 ...

  8. 【浅墨著作】 OpenCV3编程入门 内容简介 勘误 配套源代码下载

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 经过近一 ...

  9. python机器人视觉编程——入门篇(下)

    目录 1 全篇概要 2 图像的读取与运算基础 2.1图像的读取 2.1.1 从磁盘的图像(.jpg,.npg,.gif等等)读取 2.1.2 从摄像头里读取图像 2.2图像的运算 2.2.1 图像的数 ...

最新文章

  1. 非常规解释:分类ML模型的十大模型性能指标
  2. linux wifi 报错 siocsifflags: operation not possible due to rf-kill
  3. php 使用css乱码,分享CSS字符编码引起乱码快速解决的方法
  4. 010_JMS消息选择器
  5. 32 串口波特率_「正点原子FPGA连载」第五章串口中断实验
  6. 从零上手 GDB 调试,看这个教程就够了~
  7. 为什么有些大公司的效率弱爆了?
  8. python下载matplotlib.finance模块_关于Matplotlib中No module named 'matplotlib.finance'的解决办法...
  9. 人工智能AI实战100讲(二十)-先拍照后对焦,基于深度估计的景深编辑与背景虚化
  10. Oracle PL/SQL基础知识
  11. 计算机信息安全基础薄弱具体,信息安全工程师易错题精讲十三
  12. linux下编程语言,linux下各种编程语言安装
  13. 《3D数学基础系列视频》1.2向量的数乘和加减法
  14. Blockly-图形化编程工具
  15. ffmpeg学习日记5-使用ffmpeg进行h264解码
  16. JD-JUI反编译问题
  17. github、npm、Stack Overflow...... 一键加速 【支持多平台】
  18. mysql写了代码如何看表_mysql之单表查询__我自己敲的代码
  19. 码农翻身讲网络3:从Socket编程到HTTP服务器
  20. SQL中的PROCEDURE

热门文章

  1. 理想国matplotlib入门教程
  2. 【C语言】实用调试技巧与const函数提升代码健壮性
  3. iTab浏览器插件安装教程
  4. 豆豆趣事[2014年03月]
  5. 连接我的计算机 教案,六年级上册信息技术教案11连接我的计算机 重庆大学版...
  6. C-字符串函数合集模拟实现介绍注意事项
  7. 图片处理Photoshop快速给偏暗的圣诞美女美白
  8. opencv中的MSER的使用和NMS后图片文字区域
  9. 实战篇-OpenSSL之AES加密算法-CFB128模式
  10. linux 大于和小于括号的 区别