- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
拉普拉斯算子实现数字图像的锐化实验三
福建农林大学计算机与信息学院实验报告
系: 计算机与信息学院 专业: 计算机与科学技术 年级: 10级3班
姓名: 学号: 实验室号___ ____ 计算机号 116
实验时间: 2011.5.20 指导教师签字: 成绩:
报告退发 (订正 、 重做)
实验三 空间域数字图像的平滑与锐化
实验目的和要求
掌握空间域数字图像的平滑与锐化。
实验内容和原理
利用加权平均掩模实现数字图像的平滑;
利用拉普拉斯算子实现数字图像的锐化
实验环境
硬件:一般PC机
操作系统:WindowsXP
编程平台:MATLAB 或高级语言
算法描述及实验步骤
算法描述:拉普拉斯算子是与一个边缘方向无关的边缘点检测算子。它对孤立像素的响应要比对边缘或线的响应更强烈, 因此使用该算子进行图像锐化之前需要对图像作平滑处理。拉普拉斯算子是一种二阶微分算子一个连续的二元函数f (x , y ) , 其拉普拉斯运算定义为
对于数字图像,拉普拉斯算子可以简化为
g(i,j)= 8f(i,j)- f(i+1,j)- f(i-1,j)- f(i,j+1)- f(i,j-1)
上面的表达式可以表示为卷积的形式。即
表达式中的i,j=0,1,2….N-1;k=1。,i=1,H(r,s)取样如下式子
在图像锐化处理过程中,函数的拉普拉斯算子也是借组模板来实现的。模板的取样将直接影响锐化的效果,常用的模板有。
Gx=[010;1-41;010]
Gx= [111;1-81;111]
Gx= [-1-1-1;-18-1-1-1-1]
实验步骤:
一.定义一个八领域,此实验我们用到了第四个
并且定义一个算子所用到的算子为g=[1 2 1;2 4 2;1 2 1]
二.实验通过公式
Y(i,j)=X(i,j)*g(2,2)+X(i+1,j)*g(3,2)+X(i,j+1)*g(2,3)+X(i+1,j+1)*g(3,3)+X(i+1,j-1)*g(3,1)+X(i-1,j+1)*g(1,3)+X(i-1,j-1)*g(1,1)+X(i-1,j)*g(1,2)+X(i,j-1)*g(2,1);来计算模糊后的效果。并通过来subplot(2,2,2) ;imshow(Y); title显示出来
三.通过公式
Z(i,j)=Y(i,j)*f(2,2)+Y(i+1,j)*f(3,2)+Y(i,j+1)*f(2,3)+Y(i+1,j+1)*f(3,3)+Y(i+1,j-1)*f(3,1)+Y(i-1,j+1)*f(1,3)+Y(i-1,j-1)*f(1,1)+Y(i-1,j)*f(1,2)+Y(i,j-1)*f(2,1);来计算锐化后的效果。并且通过subplot(2,2,3) ;imshow(Z); title把锐化后的图片效果放在第三个位置。
四.利用公式M(i,j)=X(i,j)+Y(i,j);来计算增强后的图像效果并且通过subplot(2,2,4) ;imshow(M); title把图像放在第四个位置。
调试过程
实验结果
7. 总结
Code:
X=imread(moon.tif);
subplot(2,2,1) ;imshow(X); title 原图
b=size(X);
X=double(X);
%f=[0 -1 0;-1 4 -1;0 -1 0;]; %用四领域
f=[-1 -1 -1;-1 8 -1;-1 -1 -1;]; %用八领域
g=[1 2 1;2 4 2;1 2 1;]; %模糊用的算子
Y=zeros(b);
for(i=2:b(1)-1)
for(j=2:b(2)-1) Y(i,j)=X(i,j)*g(2,2)+X(i+1,j)*g(3,2)+X(i,j+1)*g(2,3)+X(i+1,j+1)*g(3,3)+X(i+1,j-1)*g(3,1)+X(i-1,j+1)*g(1,3)+X(i-1,j-1)*g(1,1)+X(i-1,j)*g(1,2)+X(i,j-1)*g(2,1);
end;
end;
Y=mat2gray(Y/16);
subplot(2,2,2) ;imshow(Y); title 模糊后
Z=zeros(b);
for(i=2:b(1)-1)
for(j=2:b(2)-1) Z(i,j)=Y(i,j)*f(2,2)+Y(i+1,j)*f(3,2)+Y(i,j+1)*f(2,3)+Y(i+1,j+1)*f(3,3)+Y(i+1,j-1)*f(3,1)+Y(i-1,j+1)*f(1,3)+Y
文档评论(0)