基于MATLAB编程模拟光学实验
基于MATLAB的光学实验模拟

光学模拟计算实验报告班级:物理学122班姓名:学号:实验目的:利用MATLAB软件编程实现了用衍射积分的方法对单缝衍射、杨氏双缝干涉、黑白光栅衍射的计算机模拟;以及用傅立叶变换方法对简单孔径衍射、黑白光栅及正弦光栅夫琅和费衍射的模拟。
实验仪器及软件:MATLAB;衍射积分;傅立叶变换;计算机模拟实验原理:大学教学课程中引入计算机模拟技术正日益受到重视,与Basic、C和Fortran相比,用MA TLAB软件做光学试验的模拟,只需要用数学方式表达和描述,省去了大量繁琐的编程过程。
下面来介绍利用MATLAB进行光学模拟的两种方法。
(一)衍射积分方法:该方法首先是由衍射积分算出接收屏上的光强分布,然后根据该分布调制色彩作图,从而得到衍射图案。
1.单缝衍射。
把单缝看作是np个分立的相干光源,屏幕上任意一点复振幅为np个光源照射结果的合成,对每个光源,光程差Δ=ypsinΦ,sinΦ=ys/D,光强I=I0(Σcosα)2+(Σsinα)2,其中α=2Δ/λ=πypys/λD编写程序如下,得到图1lam=500e-9;a=1e-3;D=1;ym=3*lam*D/a;ny=51;ys=linspace(-ym,ym,ny);np=51;yp=linspace(0,a,np);for i=1:nysinphi=ys(i)/D;alpha=2*pi*yp*sinphi/lam;图1 单缝衍射的光强分布 sumcos=sum(cos(alpha));sumsin=sum(sin(alpha));B(i,:)=(sumcos^2+sumsin^2)/np^2;endN=255;Br=(B/max(B))*N;subplot(1,2,1)image(ym,ys,Br); colormap(gray(N)); subplot(1,2,2) plot(B,ys); 2. 杨氏双缝干涉两相干光源到接收屏上P 点距离r 1=(D 2+(y-a/2)2)1/2, r 2=(D 2+(y+a/2)2)1/2,相位差Φ=2π(r 2-r 1)/λ,光强I=4I 0cos 2(Φ/2) 编写程序如下,得到图2 clear lam=500e-9 a=2e-3;D=1;ym=5*lam*D/a;xs=ym;n=101;ys=linspace(-ym,ym,n); for i=1:nr1=sqrt((ys(i)-a/2).^2+D^2); r2=sqrt((ys(i)+a/2).^2+D^2); phi=2*pi*(r2-r1)./lam;B(i,:)=sum(4*cos(phi/2).^2); end N=255;Br=(B/4.0)*Nsubplot(1,2,1) image(xs,ys,Br); colormap(gray(N)); subplot(1,2,2) plot(B,ys) 3. 光栅衍射公式:I=I 0(sin α/α)2(sin(λβ)/sin β)2α=(πa/λ)sin Φ β=(πd/λ)sin Φ编写程序如下:得到图3clearlam=500e-9;N=2; a=2e-4;D=5;d=5*a; ym=2*lam*D/a;xs=ym; n=1001;ys=linspace(-ym,ym,n); for i=1:nsinphi=ys(i)/D;alpha=pi*a*sinphi/lam; beta=pi*d*sinphi/lam;B(i,:)=(sin(alpha)./alpha).^2.*(sin(N*beta)./sin(beta)).^2; B1=B/max(B);end图2 杨氏双缝干涉的光强分布 图3 黑白光栅衍射光强分布NC=255;Br=(B/max(B))*NC; subplot(1,2,1) image(xs,ys,Br); colormap(gray(NC)); subplot(1,2,2) plot(B1,ys);(二)傅立叶变换方法:在傅立叶变换光学中我们知道夫琅和费衍射场的强度分布就等于屏函数的功率谱。
基于Matlab的光学实验仿真

基于Matlab的光学实验仿真基于Matlab的光学实验仿真一、引言光学是研究光的传播、反射、折射和干涉等现象的学科,广泛应用于光学器件、光通信等领域。
在光学实验中,通过搭建实验装置来观察和研究光的行为,以验证光学理论并深入理解光的特性。
然而,传统的光学实验不仅设备复杂,成本高昂,而且需要大量的实验时间和实验设计。
因此,基于计算机仿真的方法成为了一种重要的补充和替代。
Matlab作为一种强大的数值计算和仿真工具,具有强大的数学运算能力和友好的图形界面,被广泛应用于科学研究和工程设计。
在光学实验中,Matlab可以模拟光的传播、折射、干涉等各种光学现象,使得研究人员可以在计算机上进行光学实验,加速实验过程并提高实验效率。
二、光的传播仿真在光学实验中,光的传播是一项重要的研究内容。
通过Matlab的计算能力,我们可以模拟光线在不同介质中的传播情况,并观察其光程差、折射等现象。
光的传播可以用波动光学的理论来描述,其中最经典的是亥姆霍兹方程。
在Matlab中,我们可以利用波动光学的相关工具箱,通过求解亥姆霍兹方程来模拟光的传播。
例如,我们可以模拟光在一特定系统中的衍射效应。
在Matlab中,衍射效应可以通过菲涅尔衍射和弗雷涅尔衍射来模拟。
我们可以设定特定的光源和障碍物,通过Matlab的计算能力计算光的传播、衍射和干涉等现象,得到不同条件下的衍射效应,并可视化展示。
三、光的折射仿真光的折射是光学领域中的另一个重要现象,研究光的折射对于理解光在不同介质中的传播行为至关重要。
通过Matlab的仿真,我们可以模拟光的折射行为,并研究不同介质对光的影响。
在Matlab中,我们可以利用光学工具箱中的折射相关函数,输入光线的入射角度、折射率等参数,模拟光线在不同介质中的折射行为。
通过改变不同介质的折射率、入射角度等参数,我们可以观察到光的全反射、折射偏折等现象,并进行定量分析和比较。
四、光的干涉仿真光的干涉是光学领域的重要研究课题之一,通过模拟光的干涉行为,可以深入理解光的相干性、波动性质等特性。
基于Matlab的光学实验仿真

基于Matlab的光学实验仿真一、本文概述随着科技的快速发展,计算机仿真技术已成为科学研究、教学实验以及工程应用等领域中不可或缺的一部分。
在光学实验中,仿真技术能够模拟出真实的光学现象,帮助研究者深入理解光学原理,优化实验设计,提高实验效率。
本文旨在探讨基于Matlab的光学实验仿真方法,分析Matlab在光学实验仿真中的优势和应用,并通过具体案例展示其在光学实验仿真中的实际应用效果。
通过本文的阐述,读者将能够了解Matlab在光学实验仿真中的重要作用,掌握基于Matlab的光学实验仿真方法,从而更好地应用仿真技术服务于光学研究和实验。
二、Matlab基础知识Matlab,全称为Matrix Laboratory,是一款由美国MathWorks公司出品的商业数学软件,主要用于算法开发、数据可视化、数据分析以及数值计算等领域。
Matlab以其强大的矩阵计算能力和丰富的函数库,在光学实验仿真领域具有广泛的应用。
Matlab中的变量无需预先声明,可以直接使用。
变量的命名规则相对简单,以字母开头,后面可以跟字母、数字或下划线。
Matlab支持多种数据类型,包括数值型(整数和浮点数)、字符型、逻辑型、结构体、单元数组和元胞数组等。
Matlab的核心是矩阵运算,它支持多维数组和矩阵的创建和操作。
用户可以使用方括号 [] 来创建数组或矩阵,通过索引访问和修改数组元素。
Matlab还提供了大量用于矩阵运算的函数,如矩阵乘法、矩阵转置、矩阵求逆等。
Matlab具有强大的数据可视化功能,可以绘制各种二维和三维图形。
在光学实验仿真中,常用的图形包括曲线图、散点图、柱状图、表面图和体积图等。
用户可以使用plot、scatter、bar、surf和volume 等函数来创建这些图形。
Matlab支持多种控制流结构,如条件语句(if-else)、循环语句(for、while)和开关语句(switch)。
这些控制流结构可以帮助用户编写复杂的算法和程序。
《2024年基于Matlab的光学实验仿真》范文

《基于Matlab的光学实验仿真》篇一一、引言光学实验是物理学、光学工程和光学科学等领域中重要的研究手段。
然而,实际的光学实验通常涉及到复杂的光路设计和精密的仪器设备,实验成本高、周期长。
因此,通过基于Matlab的光学实验仿真来模拟光学实验,不仅能够为研究提供更方便的实验条件,而且还可以帮助科研人员更深入地理解和掌握光学原理。
本文将介绍基于Matlab的光学实验仿真的实现方法和应用实例。
二、Matlab在光学实验仿真中的应用Matlab作为一种强大的数学计算软件,在光学实验仿真中具有广泛的应用。
其强大的矩阵运算能力、图像处理能力和数值模拟能力为光学仿真提供了坚实的数学基础。
1. 矩阵运算与光线传播Matlab的矩阵运算功能可用于模拟光线传播过程。
例如,光线在空间中的传播可以通过矩阵的变换实现,包括偏振、折射、反射等过程。
通过构建相应的矩阵模型,可以实现对光线传播过程的精确模拟。
2. 图像处理与光场分布Matlab的图像处理功能可用于模拟光场分布和光束传播。
例如,通过傅里叶变换和波前重建等方法,可以模拟出光束在空间中的传播过程和光场分布情况,从而为光学设计提供参考。
3. 数值模拟与实验设计Matlab的数值模拟功能可用于设计光学实验方案和优化实验参数。
通过构建光学系统的数学模型,可以模拟出实验过程中的各种现象和结果,从而为实验设计提供依据。
此外,Matlab还可以用于分析实验数据和优化实验参数,提高实验的准确性和效率。
三、基于Matlab的光学实验仿真实现方法基于Matlab的光学实验仿真实现方法主要包括以下几个步骤:1. 建立光学系统的数学模型根据实际的光学系统,建立相应的数学模型。
这包括光路设计、光学元件的参数、光束的传播等。
2. 编写仿真程序根据建立的数学模型,编写Matlab仿真程序。
这包括矩阵运算、图像处理和数值模拟等步骤。
在编写程序时,需要注意程序的精度和效率,确保仿真的准确性。
3. 运行仿真程序并分析结果运行仿真程序后,可以得到光束传播的模拟结果和光场分布等信息。
《2024年基于Matlab的光学实验仿真》范文

《基于Matlab的光学实验仿真》篇一一、引言光学实验是物理学、光学工程和光学科学等领域中重要的研究手段。
然而,由于实验条件的限制和复杂性,实验过程往往需要耗费大量的时间和资源。
因此,基于Matlab的光学实验仿真成为了一种有效的替代方法。
通过仿真,我们可以在计算机上模拟真实的光学实验过程,获得与实际实验相似的结果,从而节省实验成本和时间。
本文将介绍基于Matlab的光学实验仿真的基本原理、方法、应用和优缺点。
二、Matlab在光学实验仿真中的应用Matlab是一种强大的数学计算软件,具有丰富的函数库和强大的计算能力,可以用于光学实验的仿真。
在光学实验仿真中,Matlab可以模拟各种光学元件、光学系统和光学现象,如透镜、反射镜、干涉仪、光谱仪等。
此外,Matlab还可以通过编程实现复杂的算法和模型,如光线追踪、光场计算、光波传播等。
三、基于Matlab的光学实验仿真方法基于Matlab的光学实验仿真方法主要包括以下几个步骤:1. 建立仿真模型:根据实验要求,建立相应的光学系统模型和算法模型。
2. 设置仿真参数:根据实际需求,设置仿真参数,如光源类型、光束尺寸、光路走向等。
3. 编写仿真程序:使用Matlab编写仿真程序,实现光路计算、光场分析和结果输出等功能。
4. 运行仿真程序:运行仿真程序,获取仿真结果。
5. 分析结果:对仿真结果进行分析和讨论,得出结论。
四、应用实例以透镜成像为例,介绍基于Matlab的光学实验仿真的应用。
首先,建立透镜成像的仿真模型,包括光源、透镜和屏幕等元件。
然后,设置仿真参数,如光源类型、透镜焦距、屏幕位置等。
接着,使用Matlab编写仿真程序,实现光线追踪和光场计算等功能。
最后,运行仿真程序并分析结果。
通过仿真结果,我们可以观察到透镜对光线的聚焦作用和成像效果,从而验证透镜成像的原理和规律。
五、优缺点分析基于Matlab的光学实验仿真具有以下优点:1. 节省时间和成本:通过仿真可以快速获得实验结果,避免实际实验中的复杂性和不确定性。
《2024年基于Matlab的光学实验仿真》范文

《基于Matlab的光学实验仿真》篇一一、引言光学实验是物理学中重要的实验之一,通过实验可以探究光的基本性质、光的传播规律以及光与物质的相互作用等。
然而,在实际的实验过程中,由于各种因素的影响,如设备精度、环境条件等,实验结果可能存在一定的误差。
为了更好地研究光学现象,提高实验的准确性和可靠性,基于Matlab的光学实验仿真被广泛应用于科研和教学中。
本文将介绍基于Matlab的光学实验仿真的相关内容。
二、Matlab在光学实验仿真中的应用Matlab是一款强大的数学软件,具有丰富的函数库和强大的计算能力,可以用于光学实验的建模、分析和仿真。
在光学实验中,Matlab可以模拟光的传播、光的干涉、衍射等现象,从而帮助研究人员更好地理解光学现象。
此外,Matlab还可以对实验数据进行处理和分析,提高实验的准确性和可靠性。
三、基于Matlab的光学实验仿真流程基于Matlab的光学实验仿真流程主要包括以下几个步骤:1. 建立光学模型:根据实验需求,建立光学模型,包括光源、光路、光学元件等。
2. 设置仿真参数:根据实验要求,设置仿真参数,如光的波长、光路长度、光学元件的参数等。
3. 运行仿真程序:运行仿真程序,模拟光的传播和光学现象。
4. 处理和分析数据:对仿真结果进行处理和分析,提取有用的信息,如光强分布、光斑形状等。
5. 绘制图表:根据需要,绘制相应的图表,如光强分布图、光路图等。
四、具体实验案例:双缝干涉实验仿真双缝干涉实验是光学中经典的实验之一,通过该实验可以探究光的波动性质。
下面将介绍基于Matlab的双缝干涉实验仿真。
1. 建立光学模型:在Matlab中建立双缝干涉实验的模型,包括光源、双缝、屏幕等。
2. 设置仿真参数:设置光的波长、双缝的宽度和间距、屏幕的距离等参数。
3. 运行仿真程序:运行仿真程序,模拟光的传播和双缝干涉现象。
4. 处理和分析数据:对仿真结果进行处理和分析,提取干涉条纹的光强分布和形状等信息。
《2024年基于Matlab的光学实验仿真》范文

《基于Matlab的光学实验仿真》篇一一、引言光学实验是研究光学现象和规律的重要手段,但在实际操作中往往受到诸多因素的限制,如实验设备的精度、实验环境的稳定性等。
因此,通过计算机仿真进行光学实验具有很大的实际意义。
本文将介绍一种基于Matlab的光学实验仿真方法,以期为光学研究提供一定的参考。
二、仿真原理及模型建立1. 仿真原理基于Matlab的光学实验仿真主要利用了光学的基本原理和数学模型。
通过建立光学系统的数学模型,模拟光在介质中的传播、反射、折射等过程,从而实现对光学实验的仿真。
2. 模型建立在建立光学实验仿真模型时,需要根据具体的实验内容和目的,选择合适的数学模型。
例如,对于透镜成像实验,可以建立光学系统的几何模型和物理模型,通过计算光线的传播路径和透镜的焦距等参数,模拟透镜成像的过程。
三、Matlab仿真实现1. 环境准备在Matlab中,需要安装相应的光学仿真工具箱,如Optic Toolbox等。
此外,还需要准备相关的仿真参数和初始数据。
2. 仿真代码实现根据建立的数学模型,编写Matlab仿真代码。
在代码中,需要定义光学系统的各个组成部分(如光源、透镜、光屏等),并设置相应的参数(如光源的发光强度、透镜的焦距等)。
然后,通过计算光线的传播路径和光强分布等参数,模拟光学实验的过程。
3. 结果分析仿真完成后,可以通过Matlab的图形处理功能,将仿真结果以图像或图表的形式展示出来。
通过对仿真结果的分析,可以得出实验结论和规律。
四、实验案例分析以透镜成像实验为例,介绍基于Matlab的光学实验仿真方法。
首先,建立透镜成像的数学模型,包括光线的传播路径和透镜的焦距等参数。
然后,编写Matlab仿真代码,模拟透镜成像的过程。
最后,通过分析仿真结果,得出透镜成像的规律和特点。
五、结论与展望基于Matlab的光学实验仿真方法具有操作简便、精度高等优点,可以有效地弥补实际实验中的不足。
通过仿真实验,可以更加深入地了解光学现象和规律,为光学研究提供一定的参考。
基于MATLAB的傅里叶光学实验的计算机模拟

物理教育基于MAT LAB 的傅里叶光学实验的计算机模拟3徐慧梁 何振江 杨冠玲 张成云(华南师范大学物理系 广州 510631)摘 要 计算机模拟技术广泛应用在教学和科研当中,在傅里叶光学实验中引入计算机模拟技术能更生动和深入地揭示光学现象的物理内涵.文章提出利用M AT LAB 模拟傅里叶光学实验的方法.该方法的优点是操作简单灵活,能完成一般光学实验中较难实现的操作,并给出了光学滤波实验的结果.关键词 计算机模拟,M AT LAB ,空间滤波,数字图像处理Computer simulation of Fourier optical experiments based on MAT LABX U Hui 2Liang HE Zhen 2Jiang Y ANG G uan 2Ling ZH ANG Cheng 2Y un(Department o f Physics ,South China Normal Univer sity ,Guangzhou 510631,China )Abstracts C om puter simulation is w idely used in teaching and research.The introduction of com puter simulation into F ourier optics experiments can aid the visualization and deeper understanding of the physics of optical phenome 2na.In this paper a new method that uses M AT LAB to simulate F ourier optics experiments is presented.The advantage of this method is that it is sim ple ,easily adaptable and capable of perform ing fairly difficult operations in the m ost comm on optical experiments.The results for an optical filter experiment are given.K ey w ords com puter simulation ,M AT LAB ,spatial filtering ,digital image processing3 2003-04-27收到初稿,2003-07-19修回 通讯联系人.E 2mail :xuhuils @s 1 引言在大学理工科课程的教学中引入计算机模拟技术正日益受到重视,关于物理图形比如光学实验图像的模拟,已经有人做过一些工作[1,2],但还较少见到有人利用MAT LAB 软件做模拟光学实验的工作.光学信息处理具有容量大、速度快、装置简单等优点,但在复杂和精密光路设计过程中为了获得最佳的光学信息处理效果,需要进行纷繁的计算和困难的实验验证,而计算机模拟技术可以为光路设计、相关光学器件的设计以及图像处理提供一条简捷的途径.利用MAT LAB 模拟光学实验简单灵活,操作者可以在计算机上自由设计图形的形状、尺寸以及实验参数变量,不受实际实验室条件的限制,能完成实际中较难完成的操作,从而加深了对物理原理、概念和图像的理解.因此,在傅里叶光学实验中引入计算机模拟技术是必要的.基于此,本文介绍怎样利用MAT LAB 来模拟傅里叶光学实验,并给出了利用此模拟技术解决的光学空间滤波实验的模拟,以及两个基于光学滤波原理的相干光学信息处理应用的实验模拟.2 计算机模拟方法MAT LAB 是一套高性能的集数值分析、矩阵运算、信息处理和数据可视化于一体的优秀的工程软件.与其他计算机语言(如C ,FORTRAN 等)相比,MAT LAB 编程规则简单,易学易用,更符合人的思维・892・方式.MAT LAB提供了强大的图形绘制和输出功能,发布的影像处理工具箱专门用于图像处理[3],利用该工具箱可以方便地模拟傅里叶光学实验,该方法简捷、灵活,不必要专门做成工程软件的形式,只需要编成MAT LAB 脚本文件即可,因此可以动态地调试和跟踪程序的运行状态.操作者可以方便地融入自己的设想,方便参量的调节,特别适合没有编程经验的人操作,从而克服了一般C AI 软件操作的不易变通性.计算机模拟傅里叶光学实验步骤的流程示意图如图1所示.图1 计算机模拟光学实验流程示意图具体操作过程是:物体图像的生成可以直接由矩阵运算生成,也可利用Windows 下的画图工具,生成一幅二值图像(属性为黑白),并将建立的图像存入MAT LAB 的工作目录(\w ork )下.然后调用命令函数imread ()输入图像,输入图像是一个二维矩阵,利用MAT LAB 函数库中的二维离散傅里叶变换函数fft2()对二维矩阵进行傅里叶变换,得到图像的频谱,该频谱是一个复数矩阵.然后将此图像的傅里叶光学简介傅里叶光学是现代光学中的一个分支,它利用光学方法实现二维函数的傅里叶变换,用傅里叶分析方法和线性系统理论来描写成像系统,收集或传递光学信息的现象,使人们研究光学不再局限于空域,而像电子通信理论一样在频率域中描述和处理光学信息.傅里叶分析方法早在19世纪末、20世纪初便成功地应用于光学领域,具有代表性的是阿贝关于显微镜的二次成像理论和阿贝-波特(空间滤波)实验.傅里叶光学早期的卓越成就是20世纪30年代泽尼克发明的相衬显微镜.20世纪60年代激光器的发明使人们获得了相干性极好的新光源,从而使基于傅里叶光学理论的信息光学得以迅速发展起来成为光学中的一门新兴的前沿科学.目前,光学计算全息及其显示、光学信息处理等已经在光学工程、工业、农业、医药卫生和科学研究等多领域得到广泛应用.傅里叶光学已成为现代光学中具有广泛影响的新分支.频谱矩阵进行一些必要的处理,以得到不同的处理目的,包括: (1)取模函数abs ()对该复数矩阵取模,得到振幅谱矩阵,因为光学图像处理的频谱图样所显示的是振幅谱;利用函数fftshift ()对取模后的矩阵进行频谱位移,这是因为变换后的二维频谱矩阵的直流分量位于图像的周边角,fftshift 交换二维矩阵的1,3象限和2,4象限,使直流分量移到频谱中心,从而使FFT 频谱可视效果与实际图像相吻合.这项操作可应用于简单孔径、光栅等的夫琅禾费衍射图样的模拟.(2)相位处理函数angle ()对该复数矩阵取位相角,得到相位谱矩阵,同(1)一样,需要对取相位后的矩阵利用函数fftshift ()进行频谱位移.这项操作可应用于相位谱的存取、相位滤波等的模拟.(3)按要求生成一个与频谱矩阵具有相同维数的滤波器(滤波函数)矩阵filter ,并与频谱矩阵作数组运算(滤波),然后对经滤波调制后的矩阵做逆傅里叶变换,最后调用命令imshow ()显示经滤波调制过后的原物体图像的处理结果.这项操作可应用于空间滤波以及基于光学滤波技术的相干光学信息处理应用的模拟.需要说明的是,做频谱位移和读取振幅或位相谱的步骤可以灵活交换,不会影响最终图像显示结果.做光学空间滤波模拟时,如果想动态获取频谱面频谱的正确图像,需要做频谱位移的操作;如果只・992・物理教育 33卷(2004年)4期想得到最终结果,可不必做频谱位移的操作.3 计算机模拟实例3.1 空间滤波的模拟空间滤波就是利用滤波器(包括振幅滤波器、位相滤波器和复数滤波器)在相干光学信息处理系统的空间频谱面上滤去一些空间频率成分,从而使像平面的像按我们的意图来改变[4].以典型的4f 相干光学信息处理系统为例,如图2所示,其中L 1为准直透镜,L 2和L 3为傅里叶变换透镜,焦距均为f ,P 1为物平面,P 2为频谱平面,P 3为像平面.频谱平面P 2可看成是信息面,P 1平面上物体的衍射光经过透镜L 2变换后在P 2面上形成衍射光斑.理想情况下,这些衍射光斑包含了物体的全部信息,可以选择不同的滤波器来对这些光斑进行调制,包括振幅和位相的调制.经过处理过后的信息再经过透镜L 3的变换,在像平面P 3再次叠加而获得所需要的按要求改善过的像.图2 4f 相干光学信息处理系统相应的模拟结果如图3所示,可见符合实际的滤波效果.其中图3(a )是网状物体,(b )是其振幅谱,(c )是低通滤波后物体图像的背景光,(d )和(e )分别是横向和竖向滤波后的像;(f ),(g )和(i )分别是相应的二元滤波器.(h )和(j )分别是透过横向和竖向二元滤波器后相应的振幅频谱成分.同时为了验证随着滤波器孔径的逐渐扩大,透过的空间频谱逐渐增加,看到物体像的逐渐清晰,我们设计了两个尺寸由小到大的低通滤波器,如图4所示.可以看到,随着通过中心孔径的频谱成分的逐渐增多,像也变得逐渐清晰.3.2 图像的周期性网点消除图像的周期性网点一般是在制版过程中形成的,这些网点间距很小,是一种高频信号,可以用相图3 空间滤波的计算机模拟结果(a )网格状输入物;(b )振幅频谱图样;(c )零频滤波输出的背景光;(d ),(e )方向滤波分别输出网格的垂直和水平结构;(f )零频滤波器;(g ),(h )横向滤波器及其调制频谱;(i ),(j )竖向滤波器及其调制频谱图4 不同尺寸的低通滤波器对成像产生的结果(a ),(b ),(c )孔径稍小的滤波器及其滤波和成像的结果;(d ),(e ),(f )孔径稍大的滤波器及其滤波和成像的结果干低通滤波的方法滤去图像的高频成分从而达到把图像中的网点消除的目的.本文设计将二值周期性网点与一幅二值汉字图像叠加,产生周期性网点图像,如图5(a ),(b ),(c )所示.然后将网点图像进行低通滤波,得到结果如图5(d )所示,可见处理的结果是相当成功的.比较(b )和(d )可以看出,尽管由于低通滤波滤掉了高频成分,但也滤掉了一部分反映原图信息的频谱成分,因此处理过后的图像较原图强度暗了一些.图5 周期性网点汉字图像低通滤波后的结果(a )周期性网点;(b )二值汉字图像;(c )有周期性网点的二值汉字图像;(d )经低通滤波后的汉字图像;(e )有周期性网点的二值汉字图像的振幅频谱・003・物理教育物理3.3 字符串的特征识别字符串的特征识别是指从给定的字符串中提取所需要的特征信息,或检测判断是否存在某一特定信息并标识其位置的方法.利用MAT LAB 模拟是通过计算匹配滤波函数,然后再进行频谱综合而得到具体的结果,如图6所示.图6(b )中的字符a 与(a )中的字符a 具有相同特征,字符经识别后在相应的位置突显亮斑,如图6(c )所示.图6 特征字符的识别图像(a )特征字符;(b )待检测的字符串;(c )检测到的字符特征亮斑4 结束语通过以上讨论可以看出,利用MAT LAB 强大的影像处理功能模拟傅里叶光学实验是成功的,而且图像也比较逼真.借助傅里叶光学理论,我们可以通过分析光学信息处理过程而建立数学模型,经过数值计算模拟光学信息处理.根据实际需要制作不同的空间滤波器就可达到不同的光学信息处理效果,可广泛应用于图像的特征识别(匹配滤波)、消模糊(逆滤波)、联合相关变换等光学信息处理.该方法不仅为信息光学、数字图像处理[5]等课程的教学提供了良好便捷的辅助手段,同时在科研当中为相关光学器件的设计也提供了另一条途径.因此我们认为,傅里叶光学中引入计算机模拟是可行的有必要的,而且也具有良好的应用前景.参考文献[1]沈为民,杜茂森,刘东旭.大学物理,2000,19(8):44[Shen WM ,Du M S ,Liu D X.C ollege Physics ,2000,19(8):44(in Chi 2nese )][2]喻力华,赵维义.大学物理,2001,20(1):22[Y u L H ,ZhaoW Y.C ollege Physics ,2001,20(1):22(in Chinese )][3]孙兆林.M AT LAB 6.x 图像处理.北京:清华大学出版社,2002.5[Sun Z L.M AT LAB 6.x Image Processing.Beijing :Ts 2inghua University Press ,2002.5(in Chinese )][4]张坤明,赵瑞程,梁瑞生.信息光学.广州:华南理工大学出版社,1993.5[Zhang K M ,Zhao R C ,Liang R S.In formationOptics.G uangzhou ::S outh China University of T echnology Press ,1993.5(in Chinese )][5]G onzalez R C ,W oods R E.Digital Image Processing .Beijng :Publishing H ouse of E lectronics Industry ,2002.7・信息服务・ T roy ,New Y ork ,U.S.A.April ,2004 J OIN OUR GRADUATE SCHOOL IN PHY SICSPh.D.in Dep a rt ment of Physics ,Applie d Physics ,a nd As t ronomyAreas of res ea rch :Terahert z Ima ging a nd sp ect ros cop y ,Teras cale Elect ronics a nd p ho 2t onics ,Na no 2Pa rticles Physics ,Bio 2p hysics ,Origins of Lif e ,As t ronomy ,Element a ry Pa rticles Physics.Teaching ,res ea rch as sis t a nt s hip s ,a nd f ellows hip s a re available.Applica tion :ht tp ://www.rpi.e du/dep t /gra d 2s ervices /Inf orma tion :ht tp ://www.rpi.e du/dep t /p hys /E 2mail :gra dp hysics @rpi.e du・103・物理教育 33卷(2004年)4期。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
B(i,:)=(sin(alpha)./alpha).^2.*(sin(N
*beta)./sin(beta)).^2;
B1=B/max(B);
end
NC=255;
Br=(B/max(B))*NC;
subplot(1,2,1)
image(xs,ys,Br);
colormap(gray(NC));
subplot(1,2,2)
( t 2 r )
dE k( ) cos
ds
r
( t 2 r )
E(P) k( ) cos S
Hale Waihona Puke dsr这便是计算衍射场的常用公式,即惠更斯-菲涅尔原理的表达式。
单色平行光通过单缝,可看作N条光束的叠加来计算, 单缝衍射的几何关系如图所示.把单缝看作一排等间 隔的光源,N个光源分布,P处的光强为这N个光源照射 结果的合成。
波程差 相位差
=
2
光的衍射现象是光的波动性的一种表现,通过对光的各种衍射现象的研究可
以深入具体地了解光的波动性。惠更斯原理认为:传播中的波面上任何一点
都可以认为是一个新的次波源,由这些次波源发出的次波是球面波,这些次
波的公共包络面就是下一个时刻的波面。菲涅尔将其进一步具体化,认为可
以将波面S分成许多面积元ds,每个ds在P点的振动可写为:
N=256;
%确定灰度的等级
Br=(B/max(B))*N; %定标
subplot(1,2,1)
image(xm,xs,Br);
colormap(gray(N)); %色调处理
subplot(1,2,2)
plot(B,xs,'k');
杨氏双缝干涉
clear lam=500e-9 a=2e-3;D=1; ym=5*lam*D/a;xs=ym; n=101;ys=linspace(-ym,ym,n); for i=1:n r1=sqrt((ys(i)-a/2).^2+D^2); r2=sqrt((ys(i)+a/2).^2+D^2); phi=2*pi*(r2-r1)./lam; B(i,:)=sum(4*cos(phi/2).^2); end N=255; Br=(B/4.0)*N subplot(1,2,1) image(xs,ys,Br); colormap(gray(N)); subplot(1,2,2) plot(B,ys)
单缝衍射
单缝衍射是光在传播过程中遇到障碍物,光波会绕过障碍物继续传播的一种现象。 如果波长与缝、孔或障碍物尺寸相当或者更大时,衍射现象最明显。
把单色点光源放在透镜的焦点上,经过透镜后的单色平行光垂直照射衍射屏时,在 屏后面不同距离上会观察到一些衍射现象,其中当屏远离到足够大的距离后,光斑 中心出现一个较大的亮斑,外围是一些较弱的明暗相间的同心圆环,此后再往外移 动,衍射花样出现稳定分布,中心处总是亮的,只是半径不断扩大而已,这种衍射 称为夫琅禾费衍射。
r (x y)2 L2
设计成MATLAB程序如下:
clear
lamba=500e-9;
%波长
a=1e-3;L=1;
%a是狭缝宽度,L屏与障碍物的距离
xm=3*lamba*L/a;
%屏幕上y方向的范围最大值
n=51;
%屏幕上的点数
xs=linspace(-xm,xm,n);
n=51;
%缝上的点数
基于MATLAB编程模拟光学实验
测试计量技术及仪器 钱朝阳
2019/11/27
在物理学波动光学的部分,往往由于这部分知识较为抽象且要用到复杂的数学运算 ,有时很难掌握好这部分的知识。为了较好地解决这一问题,本文根据惠更斯-菲涅 耳原理计算推导了夫琅禾费衍射场下单缝衍射的光强分布公式,建立了单缝衍射的 Matlab实现模型,利用Matlab强大的计算功能,得出光强分布矩阵,然后用Matlab 绘图函数得到衍射图样,同时绘制了相应的衍射光强分布图。并结合理论公式对衍 射图样进行了分析。
yp=linspace(-a/2,a/2,n);
for i=1:n
%对屏幕和光缝上各点循环,计算缝点到屏幕位置的距离
r=sqrt((xs(i)-yp).^2+L^2);
phi=2*pi.*(r-L)./lamba;%相位差
sumcos=sum(cos(phi)); %数组求和 sumsin=sum(sin(phi)); B(i,:)=(sumcos^2+sumsin^2)/n^2; %屏幕上的归一化光强 end
光栅衍射
clear
lam=500e-9;N=2;
a=2e-4;D=5;d=5*a;
ym=2*lam*D/a;xs=ym;
n=1001;
1.
ys=linspace(-ym,ym,n);
for i=1:n
sinphi=ys(i)/D;
alpha=pi*a*sinphi/lam;
beta=pi*d*sinphi/lam;
参考文献: [1]:胡守信、李柏年,《基于MATLAB的数学实验》,科学出版社 [2]:张铮、杨文平、石博强、李海鹏,《MATLAB程序设计与实例应用》,中国铁 道出版社