<span style="font-size:18px;color:#ff0000;"> </span>
拉普拉斯高斯算子是一种二阶导数算子,将在边缘处产生一个陡峭的零交叉, Laplacian算子是各向同性的,能对任何走向的界线和线条进行锐化,无方向性。这是拉普拉斯算子区别于其他算法的最大优点。
对一个连续函数f(i,j),它在位置(i,j)的拉普拉斯算子定义如下:
在图像边缘检测中,为了运算方便,函数的拉普拉斯高斯算子也是借助模板来实现的。其模板有一个基本要求:模板中心的系数为正,其余相邻系数为负,所有系数的和应该为零。
<span style="font-size:18px;color:#000099;">clear; sourcePic=rgb2gray(imread('lena.jpg'));%读取原图像 grayPic=mat2gray(sourcePic);%转换成灰度图像 subplot(121);imshow(grayPic);title('原图'); [m,n]=size(grayPic); newGrayPic=grayPic;%为保留图像的边缘一个像素 LaplacianNum=0;%经Laplacian算子计算得到的每个像素的值 LaplacianThreshold=0.21;%设定阈值 for j=2:m-1 %进行边界提取 for k=2:n-1 LaplacianNum=abs(4*grayPic(j,k)-grayPic(j-1,k)-grayPic(j+1,k)-grayPic(j,k+1)-grayPic(j,k-1)); %newGrayPic(j,k)=LaplacianNum; if(LaplacianNum > LaplacianThreshold) newGrayPic(j,k)=255; else newGrayPic(j,k)=0; end end end subplot(122),imshow(newGrayPic);title('Laplacian算子的处理结果')</span>
时间: 2024-10-23 17:45:14