MATLAB梯度和拉普拉斯算子在图像边缘检测中的应用

本文详细介绍了MATLAB中几种常见的图像边缘检测算子,如Roberts、Prewitt、Sobel、Laplace和LoG算子的原理与应用。通过实例展示了它们在图像处理中的效果,强调了Canny算子的高定位精度和低误判率,以及在噪声图像中的优势。文章还提供了相关MATLAB代码示例,以展示边缘检测的实际操作过程。
摘要由CSDN通过智能技术生成

MATLAB梯度和拉普拉斯算子在图像边缘检测中的应用


  1. 数学方法


边缘检测最通用的方法是检测灰度值的不连续性,这种不连续性用一阶和二阶导数来检测。


  1. (1)一阶导数:一阶导数即为梯度,对于平面上的图像来说,我们只需用到二维函数的梯度,即: ,该向量的幅值:,为简化计算,省略上式平方根,得到近似值;或通过取绝对值来近似,得到:。

v2-741a8eb51c6ecee87b7587925478858d_b.jpg

v2-bce58057778b9a98ba7eee2b6090dea6_b.jpg

v2-01d8dfc7a4dc3be57a36c67188083424_b.jpg

v2-8cac054e97ed29a7931653c9b6300832_b.jpg


(2)二阶导数:二阶导数通常用拉普拉斯算子来计算,由二阶微分构成:



v2-2bbcb685ea8718d79141a76695acc915_b.jpg
  1. 边缘检测的基本思想:
  2. 寻找灰度的一阶导数的幅度大于某个指定阈值的位置;
  3. 寻找灰度的二阶导数有零交叉的位置。


  1. 几种方法简介
  2. Sobel边缘检测器:以差分来代替一阶导数。Sobel边缘检测器使用一个3×3邻域的行和列之间的离散差来计算梯度,其中,每行或每列的中心像素用2来加权,以提供平滑效果。

v2-b2d7fc0ed7bf7f3ca98a179224e437d1_b.jpg


-1 -2 1
0 0 0
1 2 1
-1 0 1
-2 0 2
-1 0 1
  1. Prewitt边缘检测器:使用下图所示模板来数字化地近似一阶导数。与Sobel检测器相比,计算上简单一些,但产生的结果中噪声可能会稍微大一些。


v2-845b7b5b95f880a8a5fb2da7463d8d53_b.jpg


v2-e8219afcc6b2f7b1f2a3e1edcf09646a_b.jpg



-1 -1 -1
0 0 0
1 1 1


-1 0 1
-1 0 1
-1 0 1


  1. Roberts边缘检测器:使用下图所示模板来数字化地将一阶导数近似为相邻像素之间的差,它与前述检测器相比功能有限(非对称,且不能检测多种45°倍数的边缘)。


v2-dc42b472e80cf31c7f418f50a11844d6_b.jpg


v2-e160b599adda2fd4e8e8ea299bac8a0a_b.jpg
-1 0
0 1


0 -1
1 0



  1. Laplace边缘检测器:二维函数的拉普拉斯是一个二阶的微分定义:

v2-727532013989269ca89752ce75bc6690_b.jpg


v2-2bbcb685ea8718d79141a76695acc915_b.jpg

模板算子可分为四邻域和八邻域,如下:

0 1 0
1 -4 1
0 1 0

(四邻域)


1 1 1
1 -8 1
1 1 1

(八邻域)

  1. LoG边缘检测器


由于噪声点(灰度与周围点相差很大的像素点)对边缘检测有一定的影响,所以效果更好的是LoG算子,即Laplacian-Guass算子。引入高斯函数来平滑噪声:


该函数的Laplace算子:



它把Guass平滑滤波器和Laplace锐化滤波器结合起来,先平滑掉噪声,再进行边缘检测,所以效果比单用Laplace算子要更为平滑,效果更好。

  1. Canny边缘检测器

主要分为以下几个步骤:①使用具有指定标准差的一个高斯滤波器来平滑图像,以减少噪声;②在每个点处计算局部梯度和边缘方向;③对步骤②中确定的边缘点产生梯度中的脊线顶部进行追踪,并将实际山不在脊线顶部的像素设置为零,从而在输出中给出一条细线(非最大值抑制),然后使用滞后阈值处理法对这些脊线像素进行阈值处理。最后进行边缘连接。

















  1. 实验结果

原始图像:



算子


算子


算子




算子


(4邻域)




(8邻域)



  1. LoG





四种结果的比较:(Laplace采用8邻域模板)













图像来源:(网行天下首页>>设计图库>>文化艺术>>插画集:《牧羊犬灰度》)

图像规格:800×677 格式:SVG 模式࿱

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值