1、图像预处理例子一、 图像傅里叶变换例1. 利用傅里叶变换图像,观察分析变换结果A=imread(E:张儒良图像处理课件car1.bmp);B=imread(E:张儒良图像处理课件girl.bmp);A1=fft2(double(A);B1=fft2(double(B);subplot(1,4,1);imshow(A);subplot(1,4,2);imshow(A1);subplot(1,4,3);imshow(B);subplot(1,4,4);imshow(B1);例2. 利用傅里叶变换图像,然后用逆傅里叶变换观察分析变换结果A=imread(E:张儒良图像处理课件car1.bmp);B=
2、imread(E:张儒良图像处理课件girl.bmp);A1=fft2(double(A);B1=fft2(double(B);A2=abs(ifft2(A1);B2=abs(ifft2(B1);subplot(2,3,1);image(A);subplot(2,3,2);imshow(A1);subplot(2,3,3);image(A2);subplot(2,3,4);image(B);subplot(2,3,5);imshow(B1);subplot(2,3,6);image(B2);例3. 利用傅里叶变换图像,然后用逆傅里叶变换观察压缩结果A=imread(E:张儒良图像处理课件app
3、le1.bmp);m=rgb2gray(A);A1=fft2(double(m);s=size(A1);P1=zeros(s);P1(1:s(1),1:s(2)/1.1)=A1(1:s(1),1:s(2)/1.1);E0=(ifft2(A1);E1=abs(ifft2(P1);subplot(2,2,1);image(m);subplot(2,2,2);imshow(A1);subplot(2,2,3);image(E0);subplot(2,2,4);image(E1);二、离散余弦变换例4. 利用离散余弦变换图像,然后用逆离散余弦变换A=imread(E:张儒良图像处理课件car1.bmp
4、);B=imread(E:张儒良图像处理课件girl.bmp);C=imread(E:张儒良图像处理课件car.bmp);A1=dct2(A);B1=dct2(B);C1=dct2(C);subplot(2,3,1);imshow(A);subplot(2,3,2);imshow(A1);subplot(2,3,3);imshow(B);subplot(2,3,4);imshow(B1);subplot(2,3,5);imshow(C);subplot(2,3,6);imshow(C1)例5. 利用离散余弦变换图像,然后用逆离散余弦变换观察压缩结果D=imread(E:张儒良图像处理课件car
5、1.bmp);s=size(D)D1=dct2(D);D2=idct2(D1);P=zeros(s);P(1:100,1:100)=D1(1:100,1:100);E=idct2(P);subplot(2,2,1);imshow(D);subplot(2,2,2);imshow(D1);subplot(2,2,3);image(D2);subplot(2,2,4);image(E);例6. 编程实现离散余弦变换图像(实在太慢)A=imread(E:张儒良图像处理课件car1.bmp);A=double(A);s=size(A)M=s(1);N=s(2);ap0=sqrt(1/M);ap=sqr
6、t(2/M);aq0=sqrt(1/N);aq=sqrt(2/N);for p=1:M-1for q=1:N-1k=0;for m=0:M-1for n=0:N-1k=A(m+1,n+1)*cos(pi*(2*m+1)*p/(2*M)*cos(pi*(2*n+1)*q/(2*N)+k;endendB(p+1,q+1)=ap*aq*k;endendB三、灰度变换例7:灰度变换例程(p64)clcI=imread(E:张儒良图像处理课件car.bmp);J1=imadjust(I,0.3,0.7,0,1,1);J2=imadjust(I,0.3,0.7,0,1,0.5);J3=imadjust(I
7、,0.3,0.7,0,1,1.5);J4=imadjust(I,0.3,0.7,1,0,1.5);subplot(2,3,1);imshow(I);subplot(2,3,2);imshow(J1);subplot(2,3,3);imshow(J2);subplot(2,3,4);imshow(J3);subplot(2,3,5);imshow(J4);例7.1灰度线性变换自编程序(与imadjust(I,0.3,0.7,0,1,1)一致)clcA=imread(E:张儒良图像处理课件car.bmp);A2=double(A);M1=floor(0.3*255);M2=floor(0.7*25
8、5);A3=(A2-M1)*255/(M2-M1);s=size(A3);for i=1:s(1)for j=1:s(2)if A3(i,j)255A3(i,j)=255;endendendJ1=imadjust(A,0.3,0.7,0,1,1);A3=uint8(A3);subplot(1,3,1);imshow(A);subplot(1,3,2);imshow(A3);subplot(1,3,3);imshow(J1)例8:显示图像与直方图(p67)解法1:clcI=imread(E:张儒良图像处理课件girl.bmp);subplot(1,2,1);imshow(I);subplot(1
9、,2,2);imhist(I);解法2:clcA1=imread(E:张儒良图像处理课件girl.bmp);=size(A1);A2=floor(double(A1);N=zeros(1,256);for i=1:s(1)for j=1:s(2)k=A2(i,j);N(k+1)=N(k+1)+1;endendsubplot(1,3,1);imshow(A1);subplot(1,3,2);imhist(A1);subplot(1,3,3);bar(N)例9:直方图均衡化(p70)clcI=imread(E:张儒良图像处理课件demo1.bmp);J1=histeq(I,64);J2=histe
10、q(I,32); J3=histeq(I); subplot(4,2,1);imshow(I);subplot(4,2,2);imhist(I);subplot(4,2,3);imshow(J1);subplot(4,2,4);imhist(J1);subplot(4,2,5);imshow(J2);subplot(4,2,6);imhist(J2);subplot(4,2,7);imshow(J3);subplot(4,2,8);imhist(J3);例10:直方图规定化(p73)clcI=imread(E:张儒良图像处理课件demo1.bmp);Q=imread(E:张儒良图像处理课件gi
11、rl.bmp);J=histeq(I,32);subplot(3,2,1); imshow(J);subplot(3,2,2);imhist(J);subplot(3,2,3); imshow(Q);subplot(3,2,4);imhist(Q);counts,x=imhist(J);M=histeq(Q,counts);subplot(3,2,5);imshow(M); subplot(3,2,6);imhist(M);四、空间域图像平滑例11:加噪声(p79)clcI=imread(E:张儒良图像处理课件demo1.bmp);J1=imnoise(I,gaussian);J2=imnoi
12、se(I,salt & pepper);J3=imnoise(I,speckle);subplot(2,2,1);imshow(I);subplot(2,2,2);imshow(J1);subplot(2,2,3);imshow(J2);subplot(2,2,4);imshow(J3);例12:二维中值滤波函数消噪声(p80)clchood=3; hood1=5; hood2=7;I,map= imread(E:张儒良图像处理课件demo1.bmp);noisy=imnoise(I,salt & pepper,0.05);filtered1=medfilt2(noisy,hood hood)
13、;filtered2=medfilt2(noisy,hood1 hood1);filtered3=medfilt2(noisy,hood2 hood2);subplot(2,3,1);imshow(I,map);subplot(2,3,2);imshow(noisy,map);subplot(2,3,3);imshow(filtered1,map);subplot(2,3,4);imshow(filtered2,map);subplot(2,3,5);imshow(filtered3,map);例121 自编程序,对图像进行邻域操作,使图形轮廓清晰。clcA1=imread(E:张儒良图像处理
14、课件girl.bmp);A3=double(A1);s=size(A3);C=-1 -1 -1;-1 8 -1;-1 -1 -1;for i=2:s(1)-1for j=2:s(2)-1L=A3(i-1:i+1,j-1:j+1).*C;A4(i,j)=sum(sum(L);endendA4=uint8(A4);subplot(1,2,1);imshow(A1);subplot(1,2,2);imshow(A4);例13:四邻域和八邻域平均滤波消噪声(p81)clcI,map= imread(E:张儒良图像处理课件demo1.bmp);noisy=imnoise(I,gaussian,0.05)
15、;myfilt1=1 1 1; 1 1 1;1 1 1;myfilt1=myfilt1/9;filtered1=filter2(myfilt1,noisy);myfilt2=1 1 1; 1 2 1;1 1 1;myfilt2=myfilt2/10;filtered2=filter2(myfilt2,noisy);myfilt3=1 2 1; 2 4 2;1 2 1;myfilt3=myfilt3/10;filtered3=filter2(myfilt3,noisy);subplot(2,3,1);imshow(I,map);subplot(2,3,2);imshow(noisy,map);s
16、ubplot(2,3,3);imshow(filtered1,map);subplot(2,3,4);imshow(filtered2,map);subplot(2,3,5);imshow(filtered3,map);空间域图像锐化例14:梯度法图像锐化(p85)clc;I,map= imread(E:张儒良图像处理课件girl.bmp);I=double(I);IX,IY=gradient(I);GM=sqrt(IX.*IX+IY.*IY);OUT1=GM;OUT2=I;J=find(GM=10);OUT2(J)=GM(J);OUT3=I;J=find(GM=10);OUT3(J)=255
17、;OUT4=I;J=find(GM=10);OUT5(J)=255;Q=find(GM10);OUT5(Q)=0;subplot(3,2,1);imshow(I,map);subplot(3,2,2);imshow(OUT1,map);subplot(3,2,3);imshow(OUT2,map);subplot(3,2,4);imshow(OUT3,map);subplot(3,2,5);imshow(OUT4,map);subplot(3,2,6);imshow(OUT5,map);例15:空域高通滤波法(p87)clc;I,map= imread(E:张儒良图像处理课件girl.bmp)
18、;myfilt1=0 -1 0;-1 5 -1;0 -1 0;filtered1=filter2(myfilt1,I);myfilt2=-1 -1 -1;-1 9 -1;-1 -1 -1;filtered2=filter2(myfilt2,I);myfilt3=1 -2 1;-2 5 -2;1 -2 1;filtered3=filter2(myfilt3,I);myfilt4=-1 -2 -1;-2 19 -2;-1 -2 -1;myfilt4=myfilt4/7;filtered4=filter2(myfilt4,I);myfilt5=-2 1 -2;1 6 1;-2 1 -2;myfilt
19、5=myfilt5/2;filtered5=filter2(myfilt5,I);subplot(3,2,1); imshow(I,map);subplot(3,2,2); imshow(filtered1,map);subplot(3,2,3); imshow(filtered2,map);subplot(3,2,4); imshow(filtered3,map);subplot(3,2,5); imshow(filtered4,map);subplot(3,2,6); imshow(filtered5,map);例16:模板法锐化(p90)clc;I,map= imread(E:张儒良图像
20、处理课件girl.bmp);M,N=size(I);myfilt1=1 2 1;0 0 0;-1 -2 -1;filtered1=filter2(myfilt1,I);myfilt2=2 1 0;1 0 -1;0 -1 -2;filtered2=filter2(myfilt2,I);myfilt3=1 0 -1;2 0 -2;1 0 -1;filtered3=filter2(myfilt3,I);myfilt4=0 -1 -2;1 0 -1;1 0 -1;filtered4=filter2(myfilt4,I);myfilt5=-1 -2 -1;0 0 0;1 2 1;filtered5=fi
21、lter2(myfilt5,I);myfilt6=-2 -1 0;-1 0 -1;0 1 2;filtered6=filter2(myfilt6,I);myfilt7=-1 0 1;-2 0 2;-1 0 1;filtered7=filter2(myfilt7,I);myfilt8=0 1 2;-1 0 1;-2 -1 0;filtered8=filter2(myfilt8,I);for i=1:Mfor j=1:Nx=filtered1(i,j), filtered2(i,j), filtered3(i,j), filtered4(i,j),.filtered5(i,j), filtered
22、6(i,j), filtered7(i,j), filtered8(i,j);OUT(i,j)=max(x);endendsubplot(1,2,1); imshow(I,map);subplot(1,2,2); imshow(OUT,map);例17:模板法锐化(p93)各种频域低通滤波器clc;I,map= imread(E:张儒良图像处理课件girl.bmp);noisy=imnoise(I,gaussian,0.001);M,N=size(I);F=fft2(double(noisy);fftshift(F);Dcut=100;D0=150;D1=250;for u=1:Mfor v=
23、1:ND(u,v)=sqrt(u2+v2);BUTTERH(u,v)=1/(1+(sqrt(2)-1)*(D(u,v)/Dcut)2);EXPOTH(u,v)=exp(log(1/sqrt(2)*(D(u,v)/Dcut)2);if D(u,v)=200IDEALH(u,v)=1;elseIDEALH(u,v)=0;endif D(u,v)=D0TRAPEH(u,v)=1;elseif D(u,v)=D1TRAPEH(u,v)=(D(u,v)-D1)/(D0-D1);elseTRAPEH(u,v)=0;endendendIDEALG=IDEALH.*F;IDEALfiltered=ifft2(
24、IDEALG);BUTTERG=BUTTERH.*F;BUTTERfiltered=ifft2(BUTTERG);EXPOTG=EXPOTH.*F;EXPOTfiltered=ifft2(EXPOTG);TRAPEG=TRAPEH.*F;TRAPEfiltered=ifft2(TRAPEG);subplot(3,2,3); imshow(BUTTERfiltered,map);subplot(3,2,4); imshow(EXPOTfiltered,map);subplot(3,2,5); imshow(TRAPEfiltered,map);例17:灰色分层方法处理(p98)clc;I1= i
25、mread(E:张儒良图像处理课件068.tif);I=rgb2gray(I1);I=imresize(I,0.2);imshow(I);X=grayslice(I,32);figure; imshow(X,hot(32);例18:变换方法处理(p100)I1= imread(E:张儒良图像处理课件066.tif);I=rgb2gray(I1);I=imresize(I,0.2);imshow(I);I=double(I);M,N=size(I);L=256;for i=1:Mfor j=1:Nif I(i,j)=L/4R(i,j)=0;G(i,j)=4*I(i,j);B(i,j)=L;els
26、eif I(i,j)=L/2R(i,j)=0;G(i,j)=L;B(i,j)=-4*I(i,j)+2*L;elseif I(i,j)=3*L/4R(i,j)=4*I(i,j)-2*L;G(i,j)=L;B(i,j)=0;else R(i,j)=L; G(i,j)=-4*I(i,j)+4*L; B(i,j)=0;endendendfor i=1:Mfor j=1:NOUT(i,j,1)=R(i,j);OUT(i,j,2)=G(i,j);OUT(i,j,3)=B(i,j);endendOUT=OUT/256;figure;imshow(OUT);例19:滤波变换处理(p103)(没有调试通过)cl
27、c;I1= imread(E:张儒良图像处理课件068.tif);I=rgb2gray(I1);I=imresize(I,0.2);M,N=size(I);F=fft2(I);fftshift(F);REDcut=100;GREENcut=200;BLUEcenter=150;BLUEwidth=100;BLUEu0=10;BLUEv0=10;for u=1:Mfor v=1:ND(u,v)=sqrt(u2+v2);REDH(u,v)=1/(1+(sqrt(2)-1)*(D(u,v)/REDcut)2);GREENH(u,v)=1/(1+(sqrt(2)-1)*(GREENcut/D(u,v)
28、2);BLUED(u,v)=sqrt(u-BLUEu0)2+(v-BLUEv0)2);BLUEH(u,v)=1-1/(1+(BLUED(u,v)*BLUEwidth/(BLUED(u,v)2-(BLUEcenter)2)2);endendRED=REDH.*F;REDcolor=ifft2(RED);GREEN=GREENH.*F;GREENcolor=ifft2(GREEN);BLUE= BLUE.*F;BLUEcolor=ifft2(BLUE);REDcolor=real(REDcolor)/256;GREENcolor=real(GREENcolor)/256;BLUEcolor=rea
29、l(BLUEcolor)/256;for i=1:Mfor j=1:NOUT(i,j,1)=REDcolor(i,j);OUT(i,j,2)=GREENcolor(i,j);OUT(i,j,3)=BLUEcolor(i,j);endendfigure;OUT=abs(OUT);imshow(OUT);例20:假彩色变换(p105)clc;RGB= imread(E:张儒良图像处理课件066.tif);imshow(RGB);RGBnew(:,:,1)=RGB(:,:,3);RGBnew(:,:,2)=RGB(:,:,1);RGBnew(:,:,3)=RGB(:,:,2);figure;imshow(RGBnew);
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1