Matlab数字图像处理尝试之:[8]锐化
来源:网络收集 点击: 时间:2024-07-061),线性锐化滤波:
clear all;
I=imread(C:\Users\zjy\Desktop\test1.tif);
subplot(1,2,1),imshow(I);
xlabel(a)原始图像);
I=double(I);
H=;
J=conv2(I,H,same);
K=I-J;
subplot(1,2,2),imshow(K,);
xlabel(b)锐化滤波处理);
以上程序段实现了用线性锐化滤波对图像进行锐化滤波处理,运行程序后的效果如下图所示。

由图可见,图像模糊的部分得到了锐化,边缘部分得到了增强,边界更加明显。但图像显示清楚的地方,经滤波后发生了失真,这也是拉氏算子增强的一大缺点。
3/62),Sobel算子锐化处理:
clear all;
I=imread(C:\Users\zjy\Desktop\test1.tif);
subplot(1,2,1),imshow(I);
xlabel(a)原始图像);
H=fspecial(sobel);
J=filter2(H,I);
subplot(1,2,2),imshow(J);
xlabel(b)Sobel锐化滤波处理);
以上程序段实现了用Sobel算子锐化滤波对图像进行锐化滤波处理,运行程序后的效果如下图所示。

Sobel算子的特点是对称的一阶差分,对中心加权具有一定的平滑作用。
5/63),梯度法锐化:
clear all;
=imread(C:\Users\zjy\Desktop\test1.tif);
subplot(2,2,1),imshow(I);
xlabel(a)原始图像);
I=double(I);
=gradient(I);
gm=sqrt(IX.*IX+IY.*IY);
out1=gm;
subplot(2,2,2),imshow(out1,map);
xlabel(b)梯度值);
out2=I;
J=find(gm=15);
out2(J)=gm(J);
subplot(2,2,3),imshow(out2,map);
xlabel(c)加阀值梯度值);
out3=I;
J=find(gm=20);
out3(J)=255;
K=find(gm20);
out3(K)=0;
subplot(2,2,4),imshow(out3,map);
xlabel(d)二值化);
以上程序段实现了用梯度法锐化滤波对图像进行锐化滤波处理,运行程序后的效果如下图所示。

可以看出,几种输出方法的效果不一样。直接梯度输出背景和图像目标不是很清楚,阀值梯度输出可以消除背景的影响,而二值图像输出强化的是边缘效果。
matlab锐化版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_936064.html