当前位置:   article > 正文

浅谈——图像梯度算法中算子由来_图形梯度算子

图形梯度算子

相关概念

如何求图像的梯度?

求图像的梯度,一般是对灰度图像或者彩色图像进行操作。数字图像就是离散的点值谱,也可以叫二维离散函数。图像的梯度就是这个二维离散函数的求导。 
导数(Derivative)是微积分中的重要基础概念。在百度百科里面是这样解释的:当函数y=f(x)的自变量X在一点x0上产生一个增量Δx时,函数输出值的增量Δy与自变量增量Δx的比值在Δx趋于0时的极限a如果存在,a即为在x0处的导数,记作f’(x0)或df/dx(x0)。 
图像的求导就是水平方向或者垂直方向的,相邻两个像素之间的差值。 
图像梯度: 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;

图像中一阶微分怎么求?

首先看一下一维的微分公式Δf = f(x+1) – f(x), 对于一幅二维的数字图像f(x,y)而言,需要完

成XY两个方向上的微分,所以有如下的公式:

分别对X,Y两个方向上求出它们的偏微分,最终得到梯度Delta F.

对于离散的图像来说,一阶微分的数学表达相当于两个相邻像素的差值,根据选择的梯度算

子不同,效果可能有所不同,但是基本原理不会变化。最常见的算子为Roberts算子,其它

常见还有Sobel,Prewitt等算子。以Roberts算子为例的X,Y的梯度计算演示如下图:

一、问题

1、图像梯度和算子之间是什么关系?为什么求图像的梯度要用到算子?

图像的梯度可以用一阶导数和二阶偏导数来求解。但是图像以矩阵的形式存储的,不能像数学理论中对直线或者曲线求导一样,对一幅图像的求导相当于对一个平面、曲面求导。对图像的操作,我们采用模板对原图像进行卷积运算,从而达到我们想要的效果。而获取一幅图像的梯度就转化为:模板(Roberts、Prewitt、Sobel、Lapacian算子)对原图像进行卷积,不过这里的模板并不是随便设计的,而是根据数学中求导理论推导出来的。下面就逐一分析各梯度算子的推导过程。 

2、算子的推导 
1、知识引入: 
在一维连续数集上有函数f(x),我们可以通过求导获得该函数在任一点的斜率,根据导数的定义有: 
这里写图片描述

在二维连续数集上有函数f(x,y),我们也可以通过求导获得该函数在x和y分量的偏导数,根据定义有: 
这里写图片描述

2、梯度和Roberts算子: 
对于图像来说,是一个二维的离散型数集,通过推广二维连续型求函数偏导的方法,来求得图像的偏导数,即在(x,y)处的最大变化率,也就是这里的梯度: 
这里写图片描述 
梯度是一个矢量,则(x,y)处的梯度表示为:这里写图片描述 
其大小为:这里写图片描述 
因为平方和平方根需要大量的计算开销,所以使用绝对值来近似梯度幅值: 
这里写图片描述 
方向与α(x,y)正交:这里写图片描述 
其对应的模板为:这里写图片描述

上面是图像的垂直和水平梯度,但我们有时候也需要对角线方向的梯度,定义如下: 
这里写图片描述 
对应模板为:这里写图片描述

  1. 上述模板就是Roberts交叉梯度算子。
  • 1
  • 2

2*2大小的模板在概念上很简单,但是他们对于用关于中心点对称的模板来计算边缘方向不是很有用,其最小模板大小为3*3。3*3模板考虑了中心点对段数据的性质,并携带有关于边缘方向的更多信息。

3、Prewitt和Sobel算子: 
在3*3模板中:这里写图片描述

我如下定义水平、垂直和两对角线方向的梯度: 
这里写图片描述 
该定义下的算子称之为Prewitt算子: 
这里写图片描述

Sobel算子是在Prewitt算子的基础上改进的,在中心系数上使用一个权值2,相比较Prewitt算子,Sobel模板能够较好的抑制(平滑)噪声。 
计算公式为:这里写图片描述 
Sobel算子:这里写图片描述

上述所有算子都是通过求一阶导数来计算梯度的,用于线的检测,在图像处理中,通常用于边缘检测。在图像处理过程中,除了检测线,有时候也需要检测特殊点,这就需要用二阶导数进行检测。

4、Lapacian算子: 
一阶导数:这里写图片描述

二阶导数:这里写图片描述

我们感兴趣的是关于点x的二阶导数,故将上式中的变量减1后,得到: 
这里写图片描述

在图像处理中通过拉普拉斯模板求二阶导数,其定义如下: 
这里写图片描述 
对应模板为: 
这里写图片描述 
模板中心位置的数字是-8而不是-4,是因为要使这些系数之和为0,当遇到恒定湖对区域时,模板响应应将0。

在用lapacian算子图像进行卷积运算时,当响应的绝对值超过指定阈值时,那么该点就是被检测出来的孤立点,具体输出如下: 
这里写图片描述

部分引用参考来源:

http://blog.csdn.net/swj110119/article/details/51777422

http://blog.csdn.net/jia20003/article/details/7562092

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/554678
推荐阅读
相关标签
  

闽ICP备14008679号