整理各类滤波器的MATLAB程序清单.docx
《整理各类滤波器的MATLAB程序清单.docx》由会员分享,可在线阅读,更多相关《整理各类滤波器的MATLAB程序清单.docx(18页珍藏版)》请在冰豆网上搜索。
![整理各类滤波器的MATLAB程序清单.docx](https://file1.bdocx.com/fileroot1/2023-2/26/a4dcdd0e-8fef-4f0e-aa3f-efa42c9d5e8f/a4dcdd0e-8fef-4f0e-aa3f-efa42c9d5e8f1.gif)
整理各类滤波器的MATLAB程序清单
各类滤波器的MATLAB程序
一、理想低通滤波器
IA=imread('lena.bmp');
[f1,f2]=freqspace(size(IA),'meshgrid');
Hd=ones(size(IA));
r=sqrt(f1.^2+f2.^2);
Hd(r>0.2)=0;
Y=fft2(double(IA));
Y=fftshift(Y);
Ya=Y.*Hd;
Ya=ifftshift(Ya);
Ia=ifft2(Ya);
figure
subplot(2,2,1),imshow(uint8(IA));
subplot(2,2,2),imshow(uint8(Ia));
figure
surf(Hd,'Facecolor','interp','Edgecolor','none','Facelighting','phong');
二、理想高通滤波器
IA=imread('lena.bmp');
[f1,f2]=freqspace(size(IA),'meshgrid');
Hd=ones(size(IA));
r=sqrt(f1.^2+f2.^2);
Hd(r<0.2)=0;
Y=fft2(double(IA));
Y=fftshift(Y);
Ya=Y.*Hd;
Ya=ifftshift(Ya);
Ia=real(ifft2(Ya));
figure
subplot(2,2,1),imshow(uint8(IA));
subplot(2,2,2),imshow(uint8(Ia));
figure
surf(Hd,'Facecolor','interp','Edgecolor','none','Facelighting','phong');
三、Butterworth低通滤波器
IA=imread('lena.bmp');
[f1,f2]=freqspace(size(IA),'meshgrid');
D=0.3;
r=f1.^2+f2.^2;
n=4;
fori=1:
size(IA,1)
forj=1:
size(IA,2)
t=r(i,j)/(D*D);
Hd(i,j)=1/(t^n+1);
end
end
Y=fft2(double(IA));
Y=fftshift(Y);
Ya=Y.*Hd;
Ya=ifftshift(Ya);
Ia=real(ifft2(Ya));
figure
subplot(2,2,1),imshow(uint8(IA));
subplot(2,2,2),imshow(uint8(Ia));
figure
surf(Hd,'Facecolor','interp','Edgecolor','none','Facelighting','phong');
四、Butterworth高通滤波器
IA=imread('lena.bmp');
[f1,f2]=freqspace(size(IA),'meshgrid');
D=0.3;
r=f1.^2+f2.^2;
n=4;
fori=1:
size(IA,1)
forj=1:
size(IA,2)
t=(D*D)/r(i,j);
Hd(i,j)=1/(t^n+1);
end
end
Y=fft2(double(IA));
Y=fftshift(Y);
Ya=Y.*Hd;
Ya=ifftshift(Ya);
Ia=real(ifft2(Ya));
figure
subplot(2,2,1),imshow(uint8(IA));
subplot(2,2,2),imshow(uint8(Ia));
figure
surf(Hd,'Facecolor','interp','Edgecolor','none','Facelighting','phong');
五、高斯低通滤波器
IA=imread('lena.bmp');IB=imread('babarra.bmp');
[f1,f2]=freqspace(size(IA),'meshgrid');
D=100/size(IA,1);
r=f1.^2+f2.^2;
Hd=ones(size(IA));
fori=1:
size(IA,1)
forj=1:
size(IA,2)
t=r(i,j)/(D*D);
Hd(i,j)=exp(-t);
end
end
Y=fft2(double(IA));
Y=fftshift(Y);
Ya=Y.*Hd;
Ya=ifftshift(Ya);
Ia=real(ifft2(Ya));
figure
subplot(2,2,1),imshow(uint8(IA));
subplot(2,2,2),imshow(uint8(Ia));
figure
surf(Hd,'Facecolor','interp','Edgecolor','none','Facelighting','phong');
六、高斯高通滤波器
IA=imread('lena.bmp');IB=imread('babarra.bmp');
[f1,f2]=freqspace(size(IA),'meshgrid');
%D=100/size(IA,1);
D=0.3;
r=f1.^2+f2.^2;
fori=1:
size(IA,1)
forj=1:
size(IA,2)
t=r(i,j)/(D*D);
Hd(i,j)=1-exp(-t);
end
end
Y=fft2(double(IA));
Y=fftshift(Y);
Ya=Y.*Hd;
Ya=ifftshift(Ya);
Ia=real(ifft2(Ya));
figure
subplot(2,2,1),imshow(uint8(IA));
subplot(2,2,2),imshow(uint8(Ia));
figure
surf(Hd,'Facecolor','interp','Edgecolor','none','Facelighting','phong');
七、梯形低通滤波器
IA=imread('lena.bmp');IB=imread('babarra.bmp');
[f1,f2]=freqspace(size(IA),'meshgrid');
%D=100/size(IA,1);
D0=0.1;
D1=0.4;
r=sqrt(f1.^2+f2.^2);
Hd=zeros(size(IA));
Hd(rfori=1:
size(IA,1)
forj=1:
size(IA,2)
ifr(i,j)>=D0&r(i,j)<=D1
Hd(i,j)=(D1-r(i,j))/(D1-D0);
end
end
end
Y=fft2(double(IA));
Y=fftshift(Y);
Ya=Y.*Hd;
Ya=ifftshift(Ya);
Ia=real(ifft2(Ya));
figure
subplot(2,2,1),imshow(uint8(IA));
subplot(2,2,2),imshow(uint8(Ia));
figure
surf(Hd,'Facecolor','interp','Edgecolor','none','Facelighting','phong');
八、梯形高通滤波器
IA=imread('lena.bmp');IB=imread('babarra.bmp');
[f1,f2]=freqspace(size(IA),'meshgrid');
%D=100/size(IA,1);
D0=0.1;
D1=0.4;
r=sqrt(f1.^2+f2.^2);
Hd=ones(size(IA));
Hd(rfori=1:
size(IA,1)
forj=1:
size(IA,2)
ifr(i,j)>=D0&r(i,j)<=D1
Hd(i,j)=(D0-r(i,j))/(D0-D1);
end
end
end
Y=fft2(double(IA));
Y=fftshift(Y);
Ya=Y.*Hd;
Ya=ifftshift(Ya);
Ia=real(ifft2(Ya));
figure
subplot(2,2,1),imshow(uint8(IA));
subplot(2,2,2),imshow(uint8(Ia));
figure
surf(Hd,'Facecolor','interp','Edgecolor','none','Facelighting','phong');
九、用其他方法编写的理想低通、理想高通、Butterworth低通、同态滤波程序
1、理想低通
i1=imread('lena.bmp');
i2=imnoise(i1,'salt&pepper',0.1);
f=double(i2);
k=fft2(f);
g=fftshift(k);
[N1,N2]=size(g);
d0=50;
u0=floor(N1/2)+1;
v0=floor(N2/2)+1;
fori=1:
N1
forj=1:
N2
d=sqrt((i-u0)^2+(j-v0)^2);
ifd<=d0
h=1;
else
h=0;
end
y(i,j)=g(i,j)*h;
end
end
y=ifftshift(y);
E1=ifft2(y);
E2=real(E1);
figure
subplot(2,2,1),imshow(uint8(i1));
subplot(2,2,2),imshow(uint8(i2));
subplot(2,2,3),imshow(uint8(E2));
2、理想高通
i1=imread('lena.bmp');
i2=imnoise(i1,'salt&pepper',0.1);
f=double(i2);
k=fft2(f);
g=fftshift(k);
[N1,N2]=size(g);
n=2;
d0=10;
u0=floor(N1/2)+1;
v0=floor(N2/2)+1;
fori=1:
N1
forj=1:
N2
d=sqrt((i-u0)^2+(j-v0)^2);
ifd<=d0
h=0;
elseh=1;
end
y(i,j)=g(i,j)*h;
end
end
y=ifftshift(y);
E1=ifft2(y);
E2=real(E1);
figure
subplot(2,2,1),imshow(uint8(i1));
subplot(2,2,2),imshow(uint8(i2));
subplot(2,2,3),imshow(uint8(E2));
3、Butterworth低通
i1=imread('lena.bmp');
i2=imnoise(i1,'salt&pepper',0.1);
f=double(i2);
k=fft2(f);
g=fftshift(k);
[N1,N2]=size(g);
n=2;
d0=50;
u0=floor(N1/2)+1;
v0=floor(N2/2)+1;
fori=1:
N1
forj=1:
N2
d=sqrt((i-u0)^2+(j-v0)^2);
h=1/(1+(d/d0)^(2*n));
y(i,j)=g(i,j)*h;
end
end
y=ifftshift(y);
E1=ifft2(y);
E2=real(E1);
figure
subplot(2,2,1),imshow(uint8(i1));
subplot(2,2,2),imshow(uint8(i2));
subplot(2,2,3),imshow(uint8(E2));
4、同态滤波
I=rgb2gray(imread('fabric00.bmp'));
[M,N]=size(I);
T=double(I);
L=log(T);
F=fft2(L);
A=2;
B=0.3;
fori=1:
M
forj=1:
N
D(i,j)=((i-M/2)^2+(j-N/2)^2);
end
end
c=1.1;%锐化参数
D0=max(M,N);
H=(A-B)*(1-exp(c*(-D/(D0^2))))+B;
(2)规划实施中所采取的预防或者减轻不良环境影响的对策和措施有效性的分析和评估;F=F.*H;
C.环境影响报告书F=ifft2(F);
二、环境影响评价的要求和内容Y=exp(F);
二、环境影响评价的要求和内容figure
subplot(1,2,1),imshow(I);
《建设项目安全设施“三同时”监督管理暂行办法》(国家安全生产监督管理总局令第36号)第四条规定建设项目安全设施必须与主体工程“同时设计、同时施工、同时投入生产和使用”。
安全设施投资应当纳入建设项目概算。
并规定在进行建设项目可行性研究时,应当分别对其安全生产条件进行论证并进行安全预评价。
subplot(1,2,2),imshow(uint8(real(Y)));
(1)生产力变动法
1)规划实施可能对相关区域、流域、海域生态系统产生的整体影响。
一十、
一十一、1)采取防护措施。
Gabor滤波器
①主体是人类;
除了房地产市场外,在不同职业和地点的工资差别中也可以发现类似的情形。