资源描述:
《实验5图像锐化算法实现》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、南京信息工程大学实验(实习)报告实验(实习)名称图像锐化算法实现实验(实习)日期2013.12.2得分指导教师范春年专业软件工程年级2011班次1姓名陆超学号20112344015实验目的:1.了解图像锐化的目的和意义,巩固所学的图像锐化的理论知识和相关算法;2.掌握微分算子对图像锐化的方法;3.熟练掌握空域中常用的锐化滤波器;4.利用MATLAB程序进行图像锐化(要求:不得调用Matlab自带的图像函数,但可以调用其它数学函数),观察图像锐化的效果。实验要求:1.用Matlab语言进行编程,实现上述功能,并尽量使得程序具有通用性,3种算子3个.m文件。2.撰写实验报告并附上所用程序和结
2、果。实验内容:1.读入一幅灰度图像closeall;clear;clc;rice=imread('rice.png');imshow(rice);1.分别利用Roberts、Prewitt和Sobel边缘检测算子,对一幅灰度数字图像(cameraman.tif)进行边缘检测,显示处理前图像和检测的边缘图2.根据获得的梯度图,分别采用5种锐化输出处理方式,显示锐化输出前后的图像closeall;clear;clc;rice=imread('rice.png');imshow(rice);rice_noise=imnoise(rice,'salt&pepper',0.02);figure,s
3、ubplot(231);imshow(rice_noise);rice_max=rice_noise;rice_min=rice_noise;rice_mid1=rice_noise;%中值rice_mid2=rice_noise;%中点rice_ave=rice_noise;[wide,high]=size(rice_noise);fori=1:wide;forj=1:high;temp=zeros(3,3);if(i==1&&j==1)temp(2:3,2:3)=rice_noise(i:i+1,j:j+1);continue;endif(i==1&&j==high)temp(2:3
4、,1:2)=rice_noise(i:i+1,j-1:j);continue;endif(i==wide&&j==1)temp(1:2,2:3)=rice_noise(i-1:i,j:j+1);continue;endif(i==wide&&j==high)temp(1:2,1:2)=rice_noise(i-1:i,j-1:j);continue;endif(i==1)temp(2:3,1:3)=rice_noise(i:i+1,j-1:j+1);continue;endif(j==1)temp(1:3,2:3)=rice_noise(i-1:i+1,j:j+1);continue;e
5、ndif(i==wide)temp(1:2,1:3)=rice_noise(i-1:i,j-1:j+1);continue;endif(j==high)temp(1:3,1:2)=rice_noise(i-1:i+1,j-1:j);continue;endif((i~=1)&&(j~=1)&&(i~=wide)&&(j~=high))temp=rice_noise(i-1:i+1,j-1:j+1);continue;endrice_max(i,j)=max(max(temp));rice_min(i,j)=min(min(temp));rice_mid1(i,j)=round((rice
6、_max(i,j)+rice_min(i,j))/2);temp=sort(temp);rice_mid2(i,j)=temp(2,2);rice_ave(i,j)=round(mean2(temp));endendsubplot(232);imshow(rice_max);subplot(233);imshow(rice_min);subplot(234);imshow(rice_mid1);subplot(235);imshow(rice_mid2);subplot(236);imshow(rice_ave);