1、;g2=g(50:150,50:150);g3=g(1:2:end,1:end);g4=g(end:-1:1,:subplot(2,2,1);imshow(g1); title(图像旋转90度subplot(2,2,2);imshow(g2);title(图像裁剪subplot(2,2,3);imshow(g3);图像抽取subplot(2,2,4);imshow(g4);图像翻转执行结果:内容二:f=sin; plot(f(100,:) );e:13.tiffunction f = sin()A=1;u=1/(4*pi);v=1/(4*pi);M=256;N=256;tic for x=1:
2、M ux=u*(x-1); for y=1:N vy=v*(y-1);f(x,y)=A*sin(ux+vy);endt1=toc;t1;ticx=0:M-1;y=0:N-1;Y,X=meshgrid(y,x);g=A*sin(u*X+v*Y);t2=toc;t2;figure,imshow(f);figure,imshow(g);内容三:f1=imread(2.jpgf=rgb2gray(f);f1=rgb2gray(f1);g=imadd(f,30);imshow(g);A=f(10:80,10:80);B=f(10:C=A+B;D=C-A;subplot(2,3,1);imshow(f);
3、A图像subplot(2,3,2);imshow(mat2gray(C);C=A+B图像subplot(2,3,3);imshow(B);B图像subplot(2,3,4);C图像subplot(2,3,5);imshow(A);subplot(2,3,6);imshow(mat2gray(D);D=C-A图像1b.jpg2b.jpgf=grb2gray(f);f=f(10:A=f1(10:B=f+A;C=B-A;f图像B=f+A图像imshow(C);C=B-A图像g=imcomplement(f1);gg=mat2gray(double(f1);g1=immultiply(gg,3); a
4、心得体会:通过实验一的完成,初次熟练掌握了MATLAB的一些常用方法的使用如图像的裁剪,旋转,抽样,图像的灰度处理,图像的计算,图像的读入,显示,保存等方法。实验二掌握灰度变换(线性、指数、对数变换、对比度拉伸、求补计算)和直方图修正技术等方法在图像增强中的应用,并熟练掌握Matlab函数:g=imadjust(f,low_in high_in,low_out high_out,gama)g = hiseq(f,count)的应用。1)编写一个实现灰度变换(线性、指数和对数、对比度拉伸和求补)图像增强的 matlab程序并分析各种方法的效果。2)编写一个实现直方图均衡化处理程序,并理解直方图均
5、衡化实现步骤。内容1:编码:function g = intrans(f,varargin) % 亮度变换% f:输入图像% varargin: 函数可变参数数目error(nargchk(2,7,nargin)classin = class(f); %测试图像文件的类型if strcmp(class(f),double) & max(f(:)1 & strcmp(varargin1,log)f=mat2gray(f); %转换灰度 else f = im2double(f);method = varargin1;leng = length(varargin);switch method ca
6、se neg %获得图像负片 g=imcomplement(f); %对数变换 if leng=1 c=1; else if leng=2 c=varargin2;else error(Incorrect number of input for the log option. end g = c*(log(1+double(f);case gamma %灰度调整变换 if lengM/2);u(idx)=u(idx)-M;idy = find(vN/2);v(idy)=v(idy)-N;V,U=meshgrid(v,u);D=sqrt(U.2+V.2);D0 = 0.05*PQ(1);H=ex
7、p(-(D.2)./(2*(D02);%H=1-H; %高通滤波器H1=fftshift(H);F=fft2(f,size(H,1),size(H,2);F1=fftshift(F);F1=log(1+abs(F1);g=real(ifft2(H.*F);g=g(1:size(f,1),1:size(f,2); imshow(f,);title(原始图像); imshow(H1,);title(滤波器图像); imshow(F1,);title(傅里叶频谱图像); imshow(g,);title(低通滤波后图像);function p=work04_01()f1= imnoise(f,sal
8、t & pepper,0.1);g=hfilter1(f1);内容二,三:function g=hfilter3(f)N=PQ(2);v=0:La=double(D=D0);Lb=1./(1+(D./D0).2);Lc=exp(-(D.2)./(2*(D02);Ha=1-La;Hb=1-Lb;Hc=1-Lc;F=fft2(f,size(La,1),size(La,2);Lg1=real(ifft2(La.*F);Hg1=real(ifft2(Ha.*F);Lg2=real(ifft2(Lb.*F);Hg2=real(ifft2(Hb.*F);Lg3=real(ifft2(Lc.*F);Hg3=
9、real(ifft2(Hc.*F);figure,imshow(f,);原始图像figure;imshow(Lg1(1:size(f,2),);理想低通滤波图像imshow(Hg1(1:理想高通滤波图像imshow(Lg2(1:巴特沃斯低通滤波图像imshow(Hg2(1:巴特沃斯高通滤波图像imshow(Lg3(1:高斯低通滤波图像imshow(Hg3(1:高斯高通滤波图像执行:D:/1.jpghfilter3(f);执行效果:通过这次实验的完成,掌握了应用傅里叶变换与频率滤波方法作图像增强处理,与此同时,掌握了傅里叶变换的应用并且加深了理论的理解。实验中分别实现了不同的高通滤波和低通滤波效
10、果,并从图像可以看出他们很大的差别,但是不同的高(低)通滤波函数显示的图像的变化并不是太大。实验五掌握空域平滑滤波和中值滤波等方法实现图像消噪处理和图像边缘检测处理。主要掌握Matlab函数:(1) 滤波函数g=imfilter(f,w,filtering_mode,boundary_options,size_options)(2) 中值滤波函数g=medfilt2(f, ,padopt)(3) 加噪函数g=imnoise(f, type,parameters)(4) 生成掩模函数w=fspecial(type,parameters);1、编写一个能适应用户给定任意已知掩模的空域平滑matla
11、b程序。2、编写一个能适应用户给定任意大小掩模的中值滤波程序。3、编写一个零交点的边缘检测算法程序并用该实现图像的边缘检测。f:f=rgb2gary(f)w=ones(31);Imshow(f);g=imnoise(f,gaussianImshow(g);加高斯噪声图像g=imfilter(g,w);Imshow(g,);空间滤波图像w=1 1 1 1 -8 1 1 1 1;g1=imfilter(f,w,replicateImshow(g1,);拉普拉斯图像锐化w1 = fspecial(prewittw2 = fspecial(,5 5,1.45);ph = imfilter(f,w1,pv = imfilter(f,w1g2 = ph.2+pv.2;Imshow(g2,);prewitt图像锐化g3 = imfilter(f,w2,Imshow(g3,);log图像锐化f1 = imread(figure,imshow(f1);f = imnoise(f1, g=ordfilt2(f,5,ones(3,3),symmetricfigure,imshow(g);g1=medfilt2(f,3 3, f2=imnoise(g1,
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1