18组实验四王栩灿肖凌峰张皓Word文件下载.docx

上传人:b****1 文档编号:4816765 上传时间:2023-05-04 格式:DOCX 页数:28 大小:1.06MB
下载 相关 举报
18组实验四王栩灿肖凌峰张皓Word文件下载.docx_第1页
第1页 / 共28页
18组实验四王栩灿肖凌峰张皓Word文件下载.docx_第2页
第2页 / 共28页
18组实验四王栩灿肖凌峰张皓Word文件下载.docx_第3页
第3页 / 共28页
18组实验四王栩灿肖凌峰张皓Word文件下载.docx_第4页
第4页 / 共28页
18组实验四王栩灿肖凌峰张皓Word文件下载.docx_第5页
第5页 / 共28页
18组实验四王栩灿肖凌峰张皓Word文件下载.docx_第6页
第6页 / 共28页
18组实验四王栩灿肖凌峰张皓Word文件下载.docx_第7页
第7页 / 共28页
18组实验四王栩灿肖凌峰张皓Word文件下载.docx_第8页
第8页 / 共28页
18组实验四王栩灿肖凌峰张皓Word文件下载.docx_第9页
第9页 / 共28页
18组实验四王栩灿肖凌峰张皓Word文件下载.docx_第10页
第10页 / 共28页
18组实验四王栩灿肖凌峰张皓Word文件下载.docx_第11页
第11页 / 共28页
18组实验四王栩灿肖凌峰张皓Word文件下载.docx_第12页
第12页 / 共28页
18组实验四王栩灿肖凌峰张皓Word文件下载.docx_第13页
第13页 / 共28页
18组实验四王栩灿肖凌峰张皓Word文件下载.docx_第14页
第14页 / 共28页
18组实验四王栩灿肖凌峰张皓Word文件下载.docx_第15页
第15页 / 共28页
18组实验四王栩灿肖凌峰张皓Word文件下载.docx_第16页
第16页 / 共28页
18组实验四王栩灿肖凌峰张皓Word文件下载.docx_第17页
第17页 / 共28页
18组实验四王栩灿肖凌峰张皓Word文件下载.docx_第18页
第18页 / 共28页
18组实验四王栩灿肖凌峰张皓Word文件下载.docx_第19页
第19页 / 共28页
18组实验四王栩灿肖凌峰张皓Word文件下载.docx_第20页
第20页 / 共28页
亲,该文档总共28页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

18组实验四王栩灿肖凌峰张皓Word文件下载.docx

《18组实验四王栩灿肖凌峰张皓Word文件下载.docx》由会员分享,可在线阅读,更多相关《18组实验四王栩灿肖凌峰张皓Word文件下载.docx(28页珍藏版)》请在冰点文库上搜索。

18组实验四王栩灿肖凌峰张皓Word文件下载.docx

截止频率位于距原点D0的n阶布特沃斯滤波器(BLPF)的传递函数概念为

与IFPF不同,BLPF并无字通过频率和滤除频率之间给出明显截止的急剧不持续性。

且空间域的一阶布特沃斯滤波器没有振铃现象。

④高斯低通/高通滤波器

高斯滤波器的二维形式由下式给出:

⑤Fresnel衍射与Fraunhofer衍射

在光学里,菲涅耳衍射(Fresneldiffraction)指的是在近场区域的,即光源或衍射的图样的屏与衍射孔(障碍物)的距离是有限的。

菲涅耳衍射积分式能够用来计算光波在近场区域的传播,因法国物理学者奥古斯丁·

菲涅耳而命名,是基尔霍夫衍射公式的近似。

夫琅禾费衍射是指把单色点光源放在透镜的核心上,通过透镜后的单色平行光垂直照射时,在屏后面不同距离上会观看到一些现象,其中当屏远离到足够大的距离后,中心显现一个较大的亮斑,外围是一些较弱的明暗相间的同心圆环,尔后再往外移动,衍射花腔显现稳固散布,中心处老是亮的,只是半径不断扩大罢了,这种衍射称为夫琅禾费衍射,又称(而当距离较近时为,较近时没有夫琅禾费衍射)。

四、实验程序与结果

①构造同时包括50Hz和120Hz的正弦信号进行傅里叶变换并分析。

主程序

f1=fun_GenSinWave(1000,1000,50);

%plot(f1);

f2=fun_GenSinWave(1000,1000,120);

%figure;

plot(f2);

f=f1+f2;

y=fft(f);

figure;

plot(y);

正弦波生成函数

function[output]=fun_GenSinWave(fs,N,f)

%partone,generate50Hzand100HzsinsignalanddoFourierchange

fsm=fs;

%采样频率

Ns=N;

n=0:

N-1;

t=n/fs;

f1=f;

x=sin(2*pi*f1*t);

能够看到不同的频率在做傅里叶变换后被区分开来。

②以高斯光束为例(自己选的例子亦可),利用matlab实现二维图像的傅里叶变换,选取不同的抽样距离,观看抽样距离对结果的阻碍并分析。

采纳lena图像进行二维傅里叶变换

主程序:

%二维傅里叶变换

f=imread('

'

);

%以lena图为例

f=rgb2gray(f);

%转为灰度图

f=double(f);

%转为double值

F1=fft2(f);

%利用MATLAB库傅里叶变换函数

F1=abs(F1);

F1=fftshift(F1);

%浮点移动到中央位置

F1=log10(F1);

F1=uint8(F1);

%取对数,恢复至无符号八位整形

imshow(F1,[])%显示图像。

imwrite(F1,'

F2=downsample(f,2);

%利用downsample函数进行降采样

F2=fft2(f);

F2=abs(F2);

F2=fftshift(F2);

F2=log10(F2);

F2=uint8(F2);

figure,imshow(F2,[])%显示图像。

imwrite(F2,'

原图像

二维傅里叶变换后图像二维傅里叶变换后图像(降采样)

采纳了matlab库函数中的快速傅里叶变换函数(FFT)进行变换,尽管从结果图上不易看到降采样产生的阻碍,可是在查看图像的矩阵中数值时能够观看到像元的值是不一样的。

③对某一图像(如)

clearall

clc

图3-5'

R1=30;

R2=90;

R3=160;

F=fft2(f);

F=fftshift(F);

%原图像的傅里叶逆变换

%------------------------理想低通滤波--------------------------------------

Lowpass_Filters1=fun_Lowpass_Filters(F,R1);

imwrite(Lowpass_Filters1,'

R=30的理想低通滤波.bmp'

Lowpass_Filters2=fun_Lowpass_Filters(F,R2);

imwrite(Lowpass_Filters2,'

R=90的理想低通滤波.bmp'

Lowpass_Filters3=fun_Lowpass_Filters(F,R3);

imwrite(Lowpass_Filters3,'

R=160的理想低通滤波.bmp'

%------------------------理想高通滤波--------------------------------------

Highpass_Filters1=fun_Highpass_Filters(F,R1);

imwrite(Highpass_Filters1,'

R=30的理想高通滤波.bmp'

Highpass_Filters2=fun_Highpass_Filters(F,R2);

imwrite(Highpass_Filters2,'

R=90的理想高通滤波.bmp'

Highpass_Filters3=fun_Highpass_Filters(F,R3);

imwrite(Highpass_Filters3,'

R=160的理想高通滤波.bmp'

%------------------------高斯低通滤波--------------------------------------

Gaussian_Lowpass_Filters1=fun_Gaussian_Lowpass_Filters(F,R1);

imwrite(Gaussian_Lowpass_Filters1,'

R=30的高斯低通滤波.bmp'

Gaussian_Lowpass_Filters2=fun_Gaussian_Lowpass_Filters(F,R2);

imwrite(Gaussian_Lowpass_Filters2,'

R=90的高斯低通滤波.bmp'

Gaussian_Lowpass_Filters3=fun_Gaussian_Lowpass_Filters(F,R3);

imwrite(Gaussian_Lowpass_Filters3,'

R=160的高斯低通滤波.bmp'

%------------------------高斯高通滤波--------------------------------------

Gaussian_Highpass_Filters1=fun_Gaussian_Highpass_Filters(F,R1);

imwrite(Gaussian_Highpass_Filters1,'

R=30的高斯高通滤波.bmp'

Gaussian_Highpass_Filters2=fun_Gaussian_Highpass_Filters(F,R2);

imwrite(Gaussian_Highpass_Filters2,'

R=90的高斯高通滤波.bmp'

Gaussian_Highpass_Filters3=fun_Gaussian_Highpass_Filters(F,R3);

imwrite(Gaussian_Highpass_Filters3,'

R=160的高斯高通滤波.bmp'

%------------------------布特沃斯低通滤波-----------------------------------

Butterworth_Lowpass_Filters1=fun_Butterworth_Lowpass_Filters(F,R1);

imwrite(Butterworth_Lowpass_Filters1,'

R=30的布特沃斯低通滤波.bmp'

Butterworth_Lowpass_Filters2=fun_Butterworth_Lowpass_Filters(F,R2);

R=90的布特沃斯低通滤波.bmp'

Butterworth_Lowpass_Filters3=fun_Butterworth_Lowpass_Filters(F,R3);

R=160的布特沃斯低通滤波.bmp'

%------------------------布特沃斯高通滤波-----------------------------------

Butterworth_Highpass_Filters1=fun_Butterworth_Highpass_Filters(F,R1);

imwrite(Butterworth_Highpass_Filters1,'

R=30的布特沃斯高通滤波.bmp'

Butterworth_Highpass_Filters2=fun_Butterworth_Highpass_Filters(F,R2);

imwrite(Butterworth_Highpass_Filters2,'

R=90的布特沃斯高通滤波.bmp'

Butterworth_Highpass_Filters3=fun_Butterworth_Highpass_Filters(F,R3);

imwrite(Butterworth_Highpass_Filters3,'

R=160的布特沃斯高通滤波.bmp'

利用的自概念函数

理想低通/高通

function[output]=fun_Highpass_Filters(H_Image,R)

%------------------------变量------------------------------

%Image读取的图像

%R理想低通滤波的半径

Low=H_Image;

r=R;

[M,N]=size(Low);

h=zeros(M,N);

m=round(M/2);

n=round(N/2);

fori=1:

M

forj=1:

N

S=sqrt((i-m)^2+(j-n)^2);

ifS<

=r

h(i,j)=1;

else

h(i,j)=0;

end

end

Lowpass_Filters=h.*Low;

%理想低通滤波

Lowpass_Filters=uint8(real(ifft2(ifftshift(Lowpass_Filters))));

figure('

Name'

'

理想低通滤波'

imshow(Lowpass_Filters);

output=Lowpass_Filters;

 

%R理想高通滤波的半径

High=H_Image;

[M,N]=size(High);

Highpass_Filters=h.*High;

Highpass_Filters=uint8(real(ifft2(ifftshift(Highpass_Filters))));

理想高通滤波'

imshow(Highpass_Filters);

output=Highpass_Filters;

高斯低通/高通

function[output]=fun_Gaussian_Lowpass_Filters(G_Image,R)

%------------------------------变量------------------------------

%H_Image通过傅里叶变换处置的图像

%R高斯低通滤波的半径

Gaussian_Lowpass=G_Image;

[M,N]=size(Gaussian_Lowpass);

m1=fix(M/2);

n1=fix(N/2);

N

d=sqrt((i-m1)^2+(j-n1)^2);

G_H(i,j)=exp(-d^2/2/r^2);

end

end

Gaussian_Lowpass_Filters=Gaussian_Lowpass.*G_H;

Gaussian_Lowpass_Filters=ifftshift(Gaussian_Lowpass_Filters);

Gaussian_Lowpass_Filters=ifft2(Gaussian_Lowpass_Filters);

Gaussian_Lowpass_Filters=mat2gray(real(Gaussian_Lowpass_Filters));

高斯低通滤波'

imshow(Gaussian_Lowpass_Filters);

output=Gaussian_Lowpass_Filters;

function[output]=fun_Gaussian_Highpass_Filters(G_Image,R)

%R高斯高通滤波的半径

Gaussian_Highpass=G_Image;

[M,N]=size(Gaussian_Highpass);

G_Hh(i,j)=1-exp(-d^2/2/r^2);

Gaussian_Highpass_Filters=Gaussian_Highpass.*G_Hh;

Gaussian_Highpass_Filters=ifftshift(Gaussian_Highpass_Filters);

Gaussian_Highpass_Filters=ifft2(Gaussian_Highpass_Filters);

Gaussian_Highpass_Filters=mat2gray(real(Gaussian_Highpass_Filters));

高斯高通滤波'

imshow(Gaussian_Highpass_Filters);

output=Gaussian_Highpass_Filters;

布特沃斯低通/高通

function[output]=fun_Butterworth_Lowpass_Filters(B_Image,R)

%B_Image通过傅里叶变换处置的图像

%R布特沃斯低通滤波的半径

Butterworth_Lowpass=B_Image;

[M,N]=size(Butterworth_Lowpass);

m2=fix(M/2);

n2=fix(N/2);

M

d=sqrt((i-m2)^2+(j-n2)^2);

B_Hl=1/(1+(d/r)^(2*2));

resultBl(i,j)=B_Hl*Butterworth_Lowpass(i,j);

Butterworth_Lowpass_Filters=ifftshift(resultBl);

Butterworth_Lowpass_Filters=ifft2(Butterworth_Lowpass_Filters);

Butterworth_Lowpass_Filters=uint8(real(Butterworth_Lowpass_Filters));

布特沃斯低通滤波'

imshow(Butterworth_Lowpass_Filters);

output=Butterworth_Lowpass_Filters;

function[output]=fun_Butterworth_Highpass_Filters(B_Image,R)

%R布特沃斯高通滤波的半径

Butterworth_Highpass=B_Image;

[M,N]=size(Butterworth_Highpass);

B_HH=1/(1+(r/d)^(2*2));

resultBH(i,j)=B_HH*Butterworth_Highpass(i,j);

Butterworth_Highpass_Filters=ifftshift(resultBH);

Butterworth_Highpass_Filters=ifft2(Butterworth_Highpass_Filters);

Butterworth_Highpass_Filters=uint8(real(Butterworth_Highpass_Filters));

布特沃斯高通滤波'

imshow(Butterworth_Highpass_Filters);

output=Butterworth_Highpass_Filters;

结果图:

理想低通滤波

半径R

30

90

160

图片

理想高通滤波

布特沃斯低通滤波

布特沃斯高通滤波

高斯低通滤波

高斯高通滤波

空域高斯滤波(R=90)

比较能够得出,相关于频率域高斯滤波,空域高斯滤波取得的图像灰度值较高一些。

实验主程序

由于版本不同及兼容问题汉字部份会变成乱码,源程序可看。

%===========·

Æ

Ä

ù

û

Ñ

Ü

É

ä

Ó

ë

·

ò

À

Å

º

Ì

========

%

%========================================

clearall;

clc;

Á

È

¡

Ã

æ

µ

Í

¼

Ï

ñ

þ

Î

¬

¸

ß

Ë

¹

â

Ê

ø

Õ

Ö

²

.jpg'

f=double(f)./255;

imshow(f);

title('

Ô

Ú

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2