图像梯度
概念:图像梯度计算的是图像变换的速度。对于图像的边缘部分,其灰度值变化较大,梯度值也较大;相反,对于图像中比较平滑的部分,其灰度值变化较小,相应的梯度值也较小。一般情况下,图像梯度计算的是图像边缘信息。
严格来讲,图像梯度计算需要求导数,但是图像梯度一般通过计算像素值的差来得到梯度的近似值(近似导数值)。
例如,下图的左右两幅图分别描述了图像的水平边界和垂直边界。
针对左图,通过垂直方向的线条A和线条B的位置,可以计算图像水平方向的边界 ;
- 对于线条A和线条B,其右侧像素值与左侧像素值的差值不为零,因此是边界。
- 对于其余列,其右侧像素值与左侧像素值的差值均为零,因此不是边界。
针对右图,通过水平方向的线条A和线条B的位置,可以计算图像垂直方向的边界 - 对于线条A和线条B,其下侧像素值与上侧像素值的差值不为零,因此是边界。
- 对于其余行,其下侧像素值与上侧像素值的差值均为零,因此不是边界。
将上述运算关系进一步优化,可以得到更复杂的边缘信息。
Sobel理论基础
Sobel算子是一种离散的微风算子,该算子结合了高斯平滑和微分求导运算。该算子利用局部差分寻找边缘,计算所得的是一个梯度的近似值。
sobel算子,主要用作边缘检测,是离散差分算子,用来运算图像梯度函数的灰度近似值。在图像的任何一点使用此算子,将会产生对应的梯度矢量或者法矢量。
需要说明的是,滤波器通常是指由一幅图像根据像素点(X,Y)临近的区域计算得到另外一幅新图像的算法。因此滤波器是由领域及预定义的操作构成的。