梯度

梯度(gradient)的本意是一个向量(矢量),表示某一函数在该点处的方向导数沿着该方向取得最大值,即函数在该点处沿着该方向(此梯度的方向)变化最快,变化率最大(为该梯度的模)。

【CV】关于图像梯度

 

【CV】关于图像梯度

 

当然,梯度的概念也可以推广到三元函数的情形。同样,该梯度方向与取得最大方向导数的方向一致,而它的模为方向导数的最大值。

同样的,在单变量的实值函数的情况,梯度只是导数,或者,对于一个线性函数,也就是线的斜率。

    

 

图像

图像可以看作是二维离散函数。

Lena 图像-- 灰度图

【CV】关于图像梯度

 

图像中央 21 x 21 区域块儿,

【CV】关于图像梯度

函数视角 - 直方图

【CV】关于图像梯度

 曲线图

【CV】关于图像梯度

 

 

 

图像梯度

既然图像是二维离散函数,那么图像梯度其实就是这个二维离散函数的求导。

 

图像梯度: G(x,y) = dx(i,j) + dy(i,j);

dx(i,j) = I(i+1,j) - I(i,j);

dy(i,j) = I(i,j+1) - I(i,j);

其中,I是图像像素的值(如:RGB值),(i,j)为像素的坐标。

图像梯度一般也可以用中值差分:

dx(i,j) = [I(i+1,j) - I(i-1,j)]/2;

dy(i,j) = [I(i,j+1) - I(i,j-1)]/2;

图像边缘一般都是通过对图像进行梯度运算来实现的。

上面说的是简单的梯度定义,其实还有更多更复杂的梯度公式。

 

图像梯度算子

 

对于离散的图像来说,一阶微分的数学表达相当于两个相邻像素的差值,根据选择的梯度算子不同,效果可能有所不同,但是基本原理不会变化。

 

Roberts算子

【CV】关于图像梯度

 

 

Sobel 算子

【CV】关于图像梯度

Prewitt 算子

【CV】关于图像梯度

 

 

图像梯度的权重和角度

权重 / 振幅 :magnitude, 表示边缘强度信息

方向 / 角度:theta,预言边缘的方向走势。

【CV】关于图像梯度

 

Theta = tan-1(yGradient/xGradient)

 

 

【CV】关于图像梯度

注意,45° 算子检测出的是 135° 边缘,水平算子检测出的是竖直边缘。a = (180° - b) 的关系。权重图像则是把全部边缘凸显出来。

 

Ref

 

 

 

 

 

 

相关文章: