上次说的点、线检测中用到了sobel、 Roberts、Prewitt等等都是一阶算子,拉普拉斯是二阶算子。首先说一下一阶和二阶算子的相同与不同。
无论是一阶算子还是二阶算子,本质上都是通过对于灰度突变的检测,当检测到图像的边缘时,微分算子都会对其进行响应,我们所使用的模板都是和为1的模板,这样一来在灰度相同的区域响应会为0,而边缘处时会出现不同的值。
而不同的是相比于一阶算子来说,二阶算子对于噪声更加敏感。一阶算子本来就对于噪声没有办法进行区别,反而会放大噪声,二阶算子则会在一阶算子的基础上继续放大。这会导致如果图像中存在大量噪声,一阶算子的效果会变得很差,二阶算子更差。
二阶算子:
LOG算子,简单来说就是将拉普拉斯与高斯低通滤波一起用。上文说过,噪声对于二阶算子的影响非常大,所以一般的二阶算子都要用的高斯低通滤波进行去噪处理。
步骤为:
1)对图像进行高斯低通滤波处理。
2)对1)中结果进行拉普拉斯计算找出零交叉处。
高斯滤波:
DOG算子:
简单来说,DOG算子的原理就是将一幅图像