matlab二阶差分函数,图像微分(1、2阶导数和拉普拉斯算子)

转自:http://www.cnblogs.com/pegasus/archive/2011/05/20/2051780.html

更复杂些的滤波算子一般是先利用高斯滤波来平滑,然后计算其1阶和2阶微分。由于它们滤除高频和低频,因此称为带通滤波器(band-pass filters)。

在介绍具体的带通滤波器前,先介绍必备的图像微分知识。

1 一阶导数

连续函数,其微分可表达为0818b9ca8b590ca3270a3433284dd417.png ,或0818b9ca8b590ca3270a3433284dd417.png                         (1.1)

对于离散情况(图像),其导数必须用差分方差来近似,有

0818b9ca8b590ca3270a3433284dd417.png,前向差分 forward differencing                  (1.2)

0818b9ca8b590ca3270a3433284dd417.png ,中心差分 central differencing                     (1.3)

1)前向差分的Matlab实现

2)中心差分的Matlab实现

实例:技术图像x方向导数

0818b9ca8b590ca3270a3433284dd417.png 0818b9ca8b590ca3270a3433284dd417.png

原图像                                                   x方向1阶导数

2 图像梯度(Image Gradient)

图像I的梯度定义为0818b9ca8b590ca3270a3433284dd417.png  ,其幅值为0818b9ca8b590ca3270a3433284dd417.png 。出于计算性能考虑,幅值也可用0818b9ca8b590ca3270a3433284dd417.png 来近似。

Matlab函数

1)gradient:梯度计算

2)quiver:以箭头形状绘制梯度。注意放大下面最右侧图可看到箭头,由于这里计算横竖两个方向的梯度,因此箭头方向都是水平或垂直的。

实例:仍采用上面的原始图像

0818b9ca8b590ca3270a3433284dd417.png 0818b9ca8b590ca3270a3433284dd417.png

梯度幅值                                   梯度幅值+梯度方向

3 二阶导数

对于一维函数,其二阶导数0818b9ca8b590ca3270a3433284dd417.png ,即0818b9ca8b590ca3270a3433284dd417.png 。它的差分函数为

0818b9ca8b590ca3270a3433284dd417.png                  (3.1)

3.1 普拉斯算子(laplacian operator)

3.1.2 概念

拉普拉斯算子是n维欧式空间的一个二阶微分算子。它定义为两个梯度向量算子的内积

0818b9ca8b590ca3270a3433284dd417.png       (3.2)

其在二维空间上的公式为:

0818b9ca8b590ca3270a3433284dd417.png                (3.3)

对于1维离散情况,其二阶导数变为二阶差分

1)首先,其一阶差分为0818b9ca8b590ca3270a3433284dd417.png

2)因此,二阶差分为

0818b9ca8b590ca3270a3433284dd417.png

3)因此,1维拉普拉斯运算可以通过1维卷积核0818b9ca8b590ca3270a3433284dd417.png实现

对于2维离散情况(图像),拉普拉斯算子是2个维上二阶差分的和(见式3.3),其公式为:

0818b9ca8b590ca3270a3433284dd417.png   (3.4)

上式对应的卷积核为

0818b9ca8b590ca3270a3433284dd417.png

常用的拉普拉斯核有:

0818b9ca8b590ca3270a3433284dd417.png

3.1.2 应用

拉普拉斯算子会突出像素值快速变化的区域,因此常用于边缘检测。

Matlab里有两个函数

1)del2

计算公式:0818b9ca8b590ca3270a3433284dd417.png ,0818b9ca8b590ca3270a3433284dd417.png

2)fspecial:图像处理中一般利用Matlab函数fspecial

h = fspecial('laplacian', alpha) returns a 3-by-3 filter approximating the shape of the two-dimensional Laplacian operator.

The parameter alpha controls the shape of the Laplacian and must be in the range 0.0 to 1.0. The default value for alpha is 0.2.

3.1.3 资源

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值