1. 前言
众所周知,在传统的图像边缘检测算法中,最常用的一种算法是利用Sobel算子完成的。Sobel算子一共有
个,一个是检测水平边缘的算子,另一个是检测垂直边缘的算子。
2. Sobel算子优缺点
Sobel算子的优点是可以利用快速卷积函数,简单有效,且对领域像素位置的影响做了加权,可以降低边缘模糊程度,有较好效果。然而Sobel算子并没有基于图像的灰度信息进行处理,所以在提取图像边缘信息的时候可能不会让人视觉满意。
3. 手动构造Sobel算子
我们来看一下怎么构造Sobel算子?
Sobel算子是在一个坐标轴的方向进行非归一化的高斯平滑,在另外一个坐标轴方向做一个差分,
大小的Sobel算子是由
平滑算子和
差分算子全卷积得到,其中
代表Sobel算子的半径,必须为奇数。
对于窗口大小为
的
非归一化Sobel平滑算子等于
阶的二项式展开式的系数,而
Sobel平滑算子等于
阶的二项式展开式的系数两侧补
,然后向前差分。
举个例子:构造一个
阶的Sobel非归一化的
Sobel平滑算子和Sobel差分算子:
Sobel平滑算子: 取二项式的阶数为
,然后计算展开式系数为,