您的当前位置:首页正文

运用Matlab实现光学中的几个傅立叶变换

2020-08-22 来源:意榕旅游网
运用Matlab实现光学中的几个傅立叶变换

摘要:光学中的傅立叶变换具有难度高,抽象性大的特点,而Matlab却具有强大的信号处理功能,结合光学中傅立叶变换、傅立叶级数、卷积定理的内容,通过Matlab程序来体现 光学中几个傅里叶调动的直观演示。 关键词:傅立叶变换 Matlab程序 傅立叶光学 1. 引言:

傅立叶变换的原理由正交级数的展开来完成,是将一个在时域收敛的函数展开成一系列不同频率谐波的叠加,从而达到解决周期性函数问题的目的。在此根底上实行变动,对非周期函数进行时频变更。

跟着科学技术的不停成长与发展,信号处理在人们生产生活中应允了越来越普遍的应用,其中,采用通信频域的方法比起经典的方法体现出越来越多的优点,当今,光学中傅立叶变换和信号处理成为信号分析与处理的一种非常重要的手段和工具。

Matlab是数学计算过程中可以用到的一种数学工具,其中,电子计算机为应用数学管理实际问题创造了必不可少的物质条件,如今,在电子技术高度发达的数学领域,技术科学中最有研究价值的是数学研究领域,而数学领域中数值分析和数学建模成为了重点中的重点。

1. 光学傅立叶变换

光学傅立叶变动是光学中信息处理的根底,其中所运用的道理便是通过光学中透镜来实现傅立叶的变换效应,相干光的照射会使透镜L后焦面上光场的复振幅分布即是位于透镜物体前焦面的复振幅函数F(x,y)的立叶变换F(u,v)。将两个傅立叶变换串联就构成了典型的4厂(厂为透镜焦距)光学处理系统:Ll的前焦面称为输入平面或物平面,Ll的后焦面与L2的前焦面重合,称为频谱面或傅立叶面,L2的后焦面为输出平面或像平面。待处理的图像信号可以是胶片或干板,也可以是空间光学调制器。相干光(激光)经准直后形成宽束平行光照射位于输入平面上振幅透过率为厂(x,y)的胶片(相当于灰度为厂(x,y)的图像),由于Ll的傅立叶变换效应,在频谱面上形成图像的傅立叶空间频谱,经L2的再次变换(傅立叶逆变换)在像平面上则形成原图的反像。若在频谱面上设置适当的滤波器或相关器,就能实现对图像的各种处理,如设置高通、低通、带通或方向滤波器作高通、低通、带通或方向滤波;设置逆滤波器进行图像复原;以匹配滤波器(滤波器的复振幅透过率为特定信号空间频谱的复数共轭)或光学相关器实现图像的相关、匹配和目标检测。设计更复杂的光学处理系统还可以完成广义傅立叶变换、维纳变换、小波变换及神经网络等较复杂的处理运算

2. 傅里叶变换分析

由g(x,y)表示物体的波动散布,相干的前提之下用g(x,y)表现xy平面上的复式振幅,那么其所对应的模便是每一个点对应点的振幅,辐角则代表每一个点的初相位,由g(x,y)作傅里叶变换。

G(fx,fy)g(x,y)exp{-j2(fxxfyy)}dxdy

作傅立叶变换,可以由G(fx,fy)将g(x,y)代替出:

g(x,y)=G(fx,fy)exp{j2(fxxfyy)}dfxdfy来,由式子可以看出,物函数g(x,y)可

被分解为无穷多个不同频率的(fx,fy)和无穷多个不同方位取向的(tan=

fyfx),外加不同

权重{G(fx,fy)dfxdfy}指数基元,由物平面上复振幅公式:U(x,y)U0exp{jkx(cosycos)),指数基元exp{j2(fxxfyy)}。相当于方向是cos=fx,cos=fy为一个单位振幅的平面波,故此,该傅立叶变换式由可以理解为:物函数g(x,y)可以被看作无数振幅差异的(|G(fx,fy)dfxdfy|),方向不同(cos=fx,cos=fy)平面波相干叠加的结果,或

者是, g(x,y)可以被分解为无数个振幅与方向均有不同方向的无数平面波。由方向和振幅的不同,体现其相干性。 同理,由非相干条件可知,g(x,y)是xy上强度的分布,它是一种实函数,由逆向傅立叶变换可写成物函数:

g(x,y)2|G(fx,fy)|cos{2(fxxfyy)(fx,fy)}dfxdfy,

也就是在非相干照射的条件下,光强分布g(x,y)可以被分解成不同幅值,不同空间取向,不同频率的余弦形式的强度分布,换言之,它也可以被解析成无穷个幅值相同,且相互之间方向对称的平面波。

对于上述理解,在傅立叶光学中相当重要,我们在理解和研究傅立叶光学时,考察光学系统对物函数g(x,y)的作用情况,就可以考察它对每个基元的作用情况,然后再加以作用分析,或者说可以分别考察系统的不同方面平行光的作用,然后再加以综合分析。

3. 傅里叶光学变换的方法

持续的傅里叶变更可以将平方的可积函数f(t)表示成为复指数函数的积分或者也

可表示为级数样式。

F(w)f{f(t)}=f(t)e-iwtdt

这是将频域的函数F(W)表示时间域的函数f(t)的积分形式。连续傅立叶逆变换为:

1f(t)f[F(W)]21F(w)eiwtdw

这是把时间域的函数表示成频率域的函数。一般可认为,

f(t)为原函数,而F(W)为傅

立叶的像函数,原函数和像函数之间构成傅立叶变换的一个变换对。

4. 光学傅立叶变换的本质

光学傅立叶变换的本质即公式的变换,即:

F(W)也可以把傅立叶变换成另外一种形式

f(t)ejwtdt

1jwtF(W)f(t),e2频率相等的条件之下,给此三角函数做内积运算时,其得到内积不为0。

由此可得,傅立叶函数变更的本质就是内积的变换和内积的运算,如果给定的三角函数是一个完备的正交函数集,那么在频率不相等的条件之下,给定三角函数间的内积为0,只有在

ej1t,ej2tej(12)tdt2(12)

5 .MATLAB在傅立叶光学中的应用

(1)傅立叶光学告诉我们夫琅禾费衍射场强度分布就得等于屏函数的功率谱,因此我们可以直接在光屏上进行傅立叶变更,之后通过处理就可得到衍射的图样。物体中图像的生成可以直接运用矩阵运算来完成,也可以直接利用WINDOWS中下载的图画工具,生成一幅黑白图像,使用命令函数

imread ()对其进行输入命令,输入的图像为一个二维矩阵,此二

维矩阵必须要求很大,之后再利用MATLAB函数中fft2()对此矩阵进行二位离散傅里叶变更,以得到图像屏谱,该屏谱为一个复矩阵,然后运用取模函数abs()对该复数取模,得其屏谱,之后再利用函数FFTSHIFT对需要取模的矩阵进行屏谱位移,这是由于变换后的二维矩阵其直流分量是位于图像的周边角,况且图像交换矩阵的1、3象限和2、4象限,对直流分量移到谱中间,以便来使FFT屏谱可视效果与所得到的实际图像相吻合,最后利用imread()将所需函数图像显示出来。

(2) 假设任意输入一个函数,然后,输出函数的傅里叶变更函数,然后得振幅频率 。 x=sin(2*pi*t); %任意输入一个函数。 y=fft(x); %傅里叶变换函数。 plot(abs(y)); %振幅频率。

函数(function)表示一种对应关系,由每个输入值对应唯一输出值。这是一种一一对应的关系,由一个集合里的任意一个元素对应于另一个(可能相同的)集合里的唯一对应的元素。设一个函数中所对应输入值的输出值x的标准符号为f(x)。定义域是函数的三要素之一,对应法则的作用对象,所有属于函数输入值的集合为定义域,包含所有的输出值的集合为值域。定义在非空数集之间的映射称为函数。许多程序设计语言中,可以将一段经常需要使用的代码封装起来,在需要使用时可以直接调用,这就是程序中的函数。

在一定前提之下,傅里叶变更能满足某个函数表示成三角函数(正弦和/或余弦函数)或者满足其积分的线性组合的需求。在不同的研究领域和不同前提之下,傅里叶变更具多种不同的形式变换,如连续傅里叶变换和离散傅里叶变换。

以正弦波为例来进行说明:

1.用Matlab数学工具生成正弦波,之后作用形成并显示出时域波形图。

2. 对波形进行FFT傅里叶变换,显示频率波谱图形,其中所涉及到的采样率,频率、数据长度自选。

3.做出上述信号的均方根图谱,功率图谱,以及对数均方根图谱。4.用IFFT傅立叶反变换恢复信号,并显示恢复的正弦信号时域波形图。

fs=100;%设定采样频率 N=128; n=0:N-1; t=n/fs;

f0=10;%设定正弦信号频率 %生成正弦信号 x=sin(2*pi*f0*t); figure(1); subplot(231);

plot(t,x);%作正弦信号的时域波形 xlabel('t'); ylabel('y');

title('正弦信号y=2*pi*10t时域波形');

grid;

%进行FFT傅里叶变换并做频谱图 y=fft(x,N);%进行fft变换 mag=abs(y);%求幅值

f=(0:length(y)-1)'*fs/length(y);%进行对应的频率转换 figure(1); subplot(232);

plot(f,mag);%做频谱图 axis([0,100,0,80]); xlabel('频率(Hz)'); ylabel('幅值');

title('正弦信号y=2*pi*10t幅频谱图N=128'); grid;

%求均方根谱 sq=abs(y); figure(1); subplot(233); plot(f,sq);

xlabel('频率(Hz)'); ylabel('均方根谱');

title('正弦信号y=2*pi*10t均方根谱'); grid;

%求功率谱 power=sq.^2; figure(1); subplot(234); plot(f,power); xlabel('频率(Hz)'); ylabel('功率谱');

title('正弦信号y=2*pi*10t功率谱'); grid;

%求对数谱 ln=log(sq); figure(1); subplot(235); plot(f,ln);

xlabel('频率(Hz)'); ylabel('对数谱');

title('正弦信号y=2*pi*10t对数谱'); grid;

%用IFFT做傅里叶反变换恢复原始信号 xifft=ifft(y);

magx=real(xifft);

ti=[0:length(xifft)-1]/fs;

figure(1); subplot(236); plot(ti,magx); xlabel('t'); ylabel('y');

title('通过IFFT转换的正弦信号波形'); grid

6. 结论:

通过光学傅里叶变换和matlab 数学工具的有效结合,通过matlab强大的信号处理功能光学中的傅立叶变换具有难度高,抽象性大的特点,对数据处理和波形图像的处理,而matlab也具有强大的信号处理功能,结合光学中傅立叶变换、傅立叶级数、卷积定理的内容,通过matlab程序来体现 光学中几个傅里叶调动的直观演示。

7、参考文献:

[1]谢家宁,陈伟成,赵建林,陈国杰,张潞英.Matlab在光学信息处理仿真实验中的应用[J].

物理实验,2004,24(6):23-25

[2]欧攀,戴一堂,王爱明,柳强,李立京,伊小素.高等光学仿真(matlab版)——光导波,

激光[M].北京:北京航空航天大学出版社,2001

[3]任玉杰.数值分析及其MATLAB实现[M].北京:高等教育出版社,2007 [4]张志勇.精通Matlab[M].北京:北京航空航天大学出版社,2000

[5]熊万杰,陆建龙.MATLAB软件支持下得理论物理教学改革[J].内蒙古师范大学学报,

2003,16(5).

[6]蔡履中,王成彦,周玉芳.光学(修订版)[M].济南:山东大学出版社,2002.

[7]陈怀琛.MATLAB及其在理工课程中的应用指南[M].西安:西安电子科技大学出版社,

2000.

[8]潘柏根. 信息光学仿真实验软件的研究[M].安徽 :合肥工业大学出版社,2010. [9]徐蓁. 计算机生成全息图的快速硬件算法与光电重建[M].南京: 东南大学出版社. 2008. [10]赵盾. 光学实验计算机仿真平台的构建[M].武汉:武汉大学出版社,2010.

[11]何福. 数字信号处理方法在地震工程中的应用研究[M].北京: 中国地震局工程力学研

究所, 2007.

[12] 常永. 基于谐波小波分析的矿山机械故障诊断研究[M]. 河南:河南理工大学, 2012. [13] 尹珅. 基于光学原理的图像存储和恢复[M].南京:中南大学出版社,2014. [14] 吕宪魁. 大孔径单色傅里叶变换透镜的设计[M].重庆:重庆大学出版社,2005. [15] 刘茂先. 高一学生对函数概念理解的调查研究[M].贵州:贵州大学出版社,2014.

Matlab implementation of optical fourier transform

Abstract:in the optical fourier transform,with the high difficulty and abstract characteristics

致谢:

历时将近两个月的时间终于将这篇论文写完,在论文的写作过程中遇到了无数的困难和障碍,都在同学和老师的帮助下度过了。尤其要强烈感谢我的论文老师,她对我进行了无私的指导和帮助,不厌其烦的帮助进行论文的修改和改进。另外,在校图书馆查找资料的时候,

图书馆的老师也给我很多方面的支持和帮助。在此,向帮助和指导过我的各位老师表示最衷心的感谢!

因篇幅问题不能全部显示,请点此查看更多更全内容