I1=imread('blood1.tif'); figure,imshow(I1) f=double(I1); g=fft2(f); g=fftshift(g); [N1,N2]=size(g); n=2; d0=5;
n1=fix(N1/2); n2=fix(N2/2); for i=1:N1 for j=1:N2
d=sqrt((i-n1)^2+(j-n2)^2); if d==0 h=0; else
h=1/(1+(d0/d)^(2*n)); end
result(i,j)=h*g(i,j); end end
result=ifftshift(result); X2=ifft2(result); X3=uint8(real(X2)); figure,imshow(X3)
原图和处理结果如图4-10和4-11所示。
13
图4-10原图
图4-11原图
14
5 总结
本文主要介绍了数字图像的理论知识及MATLAB 语言的特点,基于MATLAB的数字图像处理环境,介绍了如何利用MATLAB及其图像处理工具箱进行数字图像增强处理。
参考文献
[1]徐明远,刘增力,《MATLAB仿真在信号处理中的应用》,西安电子科技大学出版社,2007.11
[2]闫敬文,《数字图像处理MATLAB版》,国防工业出版社,2007.2 [3]周新伦,柳建,《数字图像处理》,国防工业出版社,1986.3 [4]孙兆林.MATLAB6.x 图像处理[M].北京: 清华大学出版社, 2002.
[5]刘卫国.MATLAB程序设计与应用(第二版)[M].北京:高等教育出版社,2006.
15
相关推荐: