参考资料:
[1]OpenCV2计算机视觉编程手册 第6章 图像滤波
注意
[1]去掉扩展部分
[2]本次学习的定位:结合程序,了解基础概念,能够使用函数库,并没做深入理解原理,单纯看的话,效果很有限。
[3]目前没涉及到的小节全部略读。
6.2使用低通滤波器
降低图像变化的幅度。对于核,比如箱式滤波器。
【卷积】:P128
应用一个线性滤波器,沿着图像每个像素移动一个核,并且把每个对应的像素乘上相关联的权重,这在数学上称为卷积。
6.3使用中值滤波器
是一个非线性滤波器,用于去除椒盐噪点。
因为是一个非线性滤波器,所以他无法表示成一个核矩阵。
6.4使用方向滤波器检测边缘
这里使用的高通滤波器称为Sobel滤波器
Sobel算子是一种经典的边缘检测线性滤波器
Sobel算子可以被认为是图像在垂直和水平方向变化的测量。这种测量称为梯度。
定义:函数在两个正交方向上的一阶导数组成的二维向量
cv::Sobel函数用于计算图像卷积的结果。
梯度是一个二维向量,有距离和方向。
距离使用欧式距离
在图像处理中,我们通常使用绝对值之和来表示距离,即1范数。1范数和2范数距离相近但复杂度要低很多。
边缘检测中,通常只计算距离,不计算方向。
6.5计算图像的拉普拉斯变换
另一种高通线性滤波器是拉普拉斯,它计算的是2阶倒数。
拉普拉斯变换计算的是2阶倒数之和。
可以使用3X3核近似
【零交叉线】P141
位于正负强度之间,可以得到图像的边缘。
【题外话】
1个图像减去拉普拉斯可以得到增强的图像对比度。(P142)