MATLAB仿真及其在光学课程中的应用课件第四章 MATLAB在信息光学中的应用举例

合集下载

基于MATLAB的尝试教学法在光学教学中的应用-2019年精选文档

基于MATLAB的尝试教学法在光学教学中的应用-2019年精选文档

基于MATLAB的尝试教学法在光学教学中的应用光学是高校光电技术行业的一门重要的专业基础课,尤其是光学部分的干涉和衍射,无论在理论研究还是在高校光学教学中都占有重要的地位。

由于光学课程中的物理概念繁多、数学推导繁琐,物理规律抽象,虽然现在的光学教学中也引入了多媒体教学,但多媒体课件不够生动形象,而学生在学习过程中,一直都是被动的接受,所以教学效果不是很理想。

因此,本文提出,把尝试教学法与MATLAB相结合,应用到光学教学中,并给出了一个教学实例。

实验证明,该方法有效地调动了学生的学习主动性,教学效果良好,同时也对学生所学知识进行了知识的巩固与拓宽。

一、尝试教学法简介尝试教学法,是给学生创造一定条件或情境,让学生积极主动探索、独立思考、发现问题、分析问题和解决问题,以培养学生的探索精神和自学能力为主要目标的教学方法。

它不同于以往的注入式教法,它充分发挥学生在课堂教学活动中的主体作用,一开始就要求学生进行尝试练习,把学生推到主动的地位;尝试练习中遇到困难,学生便会主动地自学课本或寻求教师的帮助,学习成为学生自身的需要。

尝试教学法秉承着“先练后讲,先学后导”的教学模式,使学生成为教学的主导,自主的学习课本知识,主动的查找相关资料,主动与别人探讨,主动思考,解决问题。

调动了学生学习的积极主动性,开拓了学生解决问题的能力,同时为以后的工作和学术研究打下了良好的主动探索的精神。

二、教学实例光的干涉是光学的一个主要问题,是每个学习光学的学生必须掌握的基本内容,而光的时间相干性更是一个比较抽象的概念,学生理解困难,为此,我们通过简单的杨氏双缝干涉,采用尝试教学法,利用matlab的可视化,直观化功能,来进行学习。

设计题目如下:原理如图1所示:S1和S2两狭缝,间距为d=0.4mm,OP为观察屏,观察屏距狭缝距离为D=50cm,光通过两狭缝后,在观察屏上形成干涉条纹。

1、当两束同频率,同初始相位,振动方向相同的单色光的光强相同时,求双缝干涉的干涉强度、干涉条纹。

信息光学matlab仿真

信息光学matlab仿真

%圆孔的夫琅禾费衍射:N=512;r=3; %衍射圆孔的半径I=zeros(N,N);[m,n]=meshgrid(linspace(-N/16,N/16-1,N));D=(m.^2+n.^2).^(1/2);I(find(D<=r))=1;subplot(1,2,1),imshow(I);title('生成的衍射圆孔');% 夫琅禾费衍射的实现过程L=500;[X,Y]=meshgrid(linspace(-L/2,L/2,N));lamda_1=630; % 输入衍射波长;lamda=lamda_1/1e6k=2*pi/lamda;z=1000000; % 衍射屏距离衍射孔的距离h=exp(1j*k*z)*exp((1j*k*(X.^2+Y.^2))/(2*z))/(1j*lamda*z);%脉冲相应H =fftshift(fft2(h)); %传递函数B=fftshift(fft2(I)); %孔径频谱G=fftshift(ifft2(H.*B));subplot(1,2,2),imshow(log(1+abs(G)),[]);title('衍射后的图样');figuremeshz(X,Y,abs(G));title('夫琅禾费衍射强度分布')%单缝的夫琅禾费衍射:N=512;a=25; % 单缝的宽度b=1000;% 单缝的长度I=zeros(N,N);[m,n]=meshgrid(linspace(-N/4,N/4,N));I(-a<m&m<a&-b<n&n<b)=1;subplot(1,2,1);imshow(I);title('生成的衍射单缝');% 夫琅禾费衍射的实现过程L=500;[X,Y]=meshgrid(linspace(-L/2,L/2,N));lamda_1=630; % 输入衍射波长;lamda=lamda_1/1e6k=2*pi/lamda;z=1000000; % 衍射屏距离衍射孔的距离h=exp(1j*k*z)*exp((1j*k*(X.^2+Y.^2))/(2*z))/(1j*lamda*z);%脉冲相应H =fftshift(fft2(h)); %传递函数B=fftshift(fft2(I)); %孔径频谱G=fftshift(ifft2(H.*B));subplot(1,2,2),imshow(log(1+abs(G)),[]);title('衍射后的图样');figuremeshz(X,Y,abs(G));title('夫琅禾费衍射强度分布')。

Matlab在信息光学中应用

Matlab在信息光学中应用

精选完整ppt课件
48
缝宽对夫瑯禾菲衍射的影响
精选完整ppt课件
49
缝宽对夫瑯禾菲衍射的影响代码
• igure; • for k=1:4; • u=zeros(50,50); • u(20:30,25:(24+k))=1; • subplot(2,4,k);imshow(u); • end; • for k=5:8; • u=zeros(50,50); • u(20:30,25:(20+k))=1; • u=fft2(u,256,256);u=fftshift(u); • subplot(2,4,k);imshow(log(abs(u)),[-1 1]);title('夫瑯禾费衍射'); • end;
• [x1,map]=imread('j2.bmp');subplot(2,3,2);imshow (x1);x1=fft2(x1,256,256);x1=fftshift(x1);subplot(2, 3,5);imshow(log(abs(x1)),[-1 5]);
• [x1,map]=imread('j3.bmp');subplot(2,3,3);imshow (x1);x1=fft2(x1,256,256);x1=fftshift(x1);subplot(2, 3,6);imshow(log(abs(x1)),[-1 5]);
• xlabel('kasinθ');
• ylabel('光强I/I0');
• title('多缝缝衍射强度分布');
• lgray=zeros(100,3);
• for i=0:99

matlab仿真及其在光学课程中的应用

matlab仿真及其在光学课程中的应用

Matlab仿真及其在光学课程中的应用引言光学是物理学的一门重要分支,研究光的传播、发射、吸收和激发等现象。

在光学课程中,学生需要深入理解光的性质和行为,并通过实验与仿真来加深对光学原理的理解。

Matlab是一种强大的数学工具,它在光学仿真中有着广泛的应用。

本文将介绍Matlab在光学课程中的应用,并探讨其在光学仿真中的优势和局限性。

Matlab在光学课程中的应用1. 光的传播模拟在光学课程中,我们经常需要研究光在不同介质中的传播行为。

Matlab的光线传播仿真工具箱提供了一套丰富的函数和工具,可以模拟光的传播路径、光束的变化和光的干涉等现象。

通过这些仿真工具,学生可以直观地观察到光在不同介质中的传播速度、折射角度和波长变化等重要现象,加深对光的传播行为的理解。

2. 光学元件设计与优化在光学器件的设计与优化中,Matlab可以帮助我们建立光学系统的数学模型,并通过优化算法来提高设计的性能。

例如,在透镜的设计中,我们可以使用Matlab中的光学元件模拟工具箱来建立透镜的材料、形状和尺寸等参数,并通过优化算法来优化透镜的成像性能。

这样的仿真过程可以使学生深入了解光学器件的设计过程,并提高他们的设计和优化能力。

3. 光学散射模拟光学散射是光在介质中遇到微观颗粒或界面时发生的现象,对于理解大气中的光传播、材料的散射特性等具有重要意义。

Matlab提供了多种模拟光学散射现象的工具和函数,可以帮助学生研究光在不同介质中的散射行为。

通过这些仿真工具,学生可以模拟不同尺寸和形状的颗粒对光的散射效应,并探索散射对光的传播的影响,深入理解光学散射的机理和特性。

Matlab光学仿真的优势和局限性1. 优势•丰富的功能和工具:Matlab提供了许多功能强大的工具箱和函数,用于光学仿真。

这些工具箱包括光线传播仿真工具箱、光学元件模拟工具箱等,可以满足不同仿真需求。

•易于学习和使用:Matlab具有简洁、直观的界面和易于学习的语法,使得初学者可以快速上手,并且能够更加专注于光学问题的研究。

MATLAB仿真及其在光学课程中的应用课件第三章 MATLAB在光学原理中的应用举例

MATLAB仿真及其在光学课程中的应用课件第三章 MATLAB在光学原理中的应用举例

• k1=5; %波1波数
振幅
0
• k2=4; %波2波数 -0.5
• t=0.1:0.2:1.3; %对时间进行等间隔取点
-1
• a=1;
%波动振幅
0
• x=0:0.001:5; %对传播方向x轴进行等间隔取点
• A2=a*cos(k2*x-w2*t(end)); %A2波动函数
• A1=a*cos(k1*x-w1*t(end)); %A1波动函数
第三章 MATLAB在光学原理 中的应用举例
3.1 平面电磁波在不同媒介分界面上的 入射、反射和折射
• 3.1.1 电矢量平行入射面的反射系数和振幅透 射系数
反射系数为:
rp n2 cosi n1 n2 cosi n1
1 (n1 / n2 )2 sin2 i 1 (n1 / n2 )2 sin2 i
0
1
2
3
4
图3-10 单色光双缝干涉实验结果
• 【例3-2-5】模拟非单色光的双缝干涉实验。 • MATALB程序见M文件
x 10-3 -1
• plot(x,A1,'-',x,A2,':')
• set(gcf,'color',[1 1 1]);
• set(gca,'YTick',[-1:0.5:1]);
• set(gca,'XTick',[0:1:5]); • xlabel('变量X') • ylabel('振幅') • title('两列单色平面波的模拟') • legend('光波1','光波2')

《MATLAB仿真及其在光学课程中的应用(第3版)》教学课件—02MATLAB的基本语法

《MATLAB仿真及其在光学课程中的应用(第3版)》教学课件—02MATLAB的基本语法

• 2.1.4 元胞数组
• 元胞是元胞数组(CellArray)的基本组成部分。元胞 数组与数值数组相似,以下标来区分,单元元胞数组由元 胞和元胞内容两部分组成。与一般的数值数组不同,元胞 可以存放任何类型、任何大小的数组,而且同一个元胞数 组中各元胞的内容可以不同。创建元胞数组有用花括号{ } 直接赋值生成元胞数组和函数cell创建元胞数组这两种方 法。元胞数组的运算函数如书中表2-6所示。
• 【例2-1-3】元胞数组创建与显示实例。 • MATLAB语句: • a={'MATLAB成绩',91,['笔试46';'上机45']} %用括号{}直接赋值 • b=cell(2);b{1,1}='class';b{1,2}='no020305'; • b{2,1}='name mary'; b{2,2}=['Computer is 95'] %函数cell创建元胞
MATLAB语句:
• >>student=struct('number','02110875','name','王玲','sex','女 ','age','21',...
• 'class','03','department','02')
• 运行语句,输出结果:
• student =

number: '02110875'
• MATLAB为关系运算和逻辑运算提供了关系操作符和 逻辑操作符,如书中表2-4和表2-5所示。

《2024年基于Matlab的光学实验仿真》范文

《2024年基于Matlab的光学实验仿真》范文

《基于Matlab的光学实验仿真》篇一一、引言光学实验是物理学、光学工程和光学科学等领域中重要的研究手段。

然而,传统的光学实验通常需要使用大量的物理设备和器材,而且往往因为各种因素的影响(如设备误差、环境干扰等)而存在一定程度的误差。

为了更好地研究光学原理、优化光学设计、减少实验成本和降低实验风险,基于Matlab的光学实验仿真逐渐成为了研究的热点。

本文旨在介绍基于Matlab的光学实验仿真的原理、方法和应用。

二、Matlab光学实验仿真的原理Matlab是一种强大的数学计算软件,具有丰富的函数库和强大的数据处理能力。

在光学实验仿真中,Matlab可以通过建立光学系统的数学模型,模拟光在介质中的传播、反射、折射、干涉、衍射等过程,从而实现对光学系统的性能进行预测和优化。

三、Matlab光学实验仿真的方法基于Matlab的光学实验仿真主要包括以下几个步骤:1. 建立光学系统的数学模型。

根据光学系统的原理和结构,建立光在介质中传播的数学模型,包括光的传播路径、光线的反射和折射等。

2. 编写仿真程序。

利用Matlab的编程语言,根据数学模型编写仿真程序,实现光在介质中的传播过程的模拟。

3. 设置仿真参数。

根据实验需要,设置仿真参数,如光源的波长、光线的入射角、介质的折射率等。

4. 运行仿真程序。

运行仿真程序,得到光在介质中传播的模拟结果。

5. 分析结果。

对模拟结果进行分析,得出光学系统的性能参数,如光线的传播轨迹、光强分布等。

四、Matlab光学实验仿真的应用基于Matlab的光学实验仿真可以广泛应用于光学设计、光学测量和光学教学等领域。

1. 光学设计。

在光学设计中,可以利用Matlab进行光学系统的性能预测和优化。

通过建立光学系统的数学模型,模拟光在介质中的传播过程,可以预测光学系统的性能参数,如焦距、像差等。

同时,通过优化设计参数,可以优化光学系统的性能,提高光学系统的成像质量和稳定性。

2. 光学测量。

现代信息光学(matlab)

现代信息光学(matlab)

现代信息光学(matlab)信息光学是一门研究光学与信息技术相结合的交叉学科,是光学和信息科学技术的融合领域。

信息光学是指利用光学原理和技术,研究并开发一系列新型器件、系统和技术,以满足信息处理、通信、显示和存储等领域的需求。

作为信息技术与光学学科的交叉学科,信息光学将光学、物理学、信息科学、电子工程等学科的基本理论和方法综合应用到信息处理与传输、高密度存储、显示技术和生物医学成像等新领域。

在现代信息光学的研究与应用中,Matlab作为一种强大的数学计算软件,发挥了重要的作用。

Matlab具有易于使用的界面、丰富的数学函数库和强大的绘图能力,可用于进行复杂的数学计算、图像处理、信号处理、模拟仿真等工作,对信息光学领域的理论研究和技术应用提供了有力的支持。

下面将从几个方面介绍现代信息光学中Matlab的应用:一、光学系统设计与分析1、Matlab在光学系统的参数优化和性能分析中的应用。

光学系统的设计需要考虑多种因素,如光学元件的性能、系统的分辨率、成像质量等。

Matlab可以通过数学模型分析复杂的光学系统,进行光学元件的参数优化和光学系统的性能分析,为光学系统的设计提供重要的参考和支持。

2、Matlab在光学成像系统的模拟仿真中的应用。

光学成像系统的设计和性能评价需要进行大量的模拟仿真工作,Matlab具有强大的仿真能力,可以模拟光学系统的成像过程,分析成像质量、分辨率等参数,为光学成像系统的设计和优化提供重要的帮助。

二、光学信号处理与图像处理1、Matlab在光学信号处理中的应用。

光学信号处理是信息光学领域中的一个重要分支,涉及到光学信号的采集、处理、传输和显示等方面。

Matlab中丰富的信号处理工具箱可以应用于光学信号的采集、滤波、频谱分析、信噪比分析等工作,为光学信号处理提供了重要的工具和支持。

2、Matlab在图像处理中的应用。

图像处理是信息光学领域中的另一个重要分支,涉及到数字图像的获取、处理、分析和显示等方面。

教学课件 胡章芳-MATLAB仿真及其在光学课程中的应用(第三版)

教学课件 胡章芳-MATLAB仿真及其在光学课程中的应用(第三版)
• 安装完成后,还需进行软件激活。 在“MathWorks软件激 活”界面中,如书中图1-10,选中第二项“在不使用Internet 的情况下手动激活”,然后点击“下一步”按钮。
• 出现“激活已完成”界面,如书中图1-11所示,提示“激 活已完成”后,点击“完成”按钮。
• 激活完成后,就可以启动MATLAB R2020a了。
• 首先,解压完MATLAB R2020a文件,打开文件,点击 “setup.exe”文件,出现如如书中图1-1所示界面,在 “是否接受许可协议的条款”后选择“是”,单击“下一 步”按钮。
• 出现如书中图1-2所示的“文件安装密钥”窗口,输入 MATLAB R2020a所提供的安装密钥后点击“下一步”继续。
相对来说,这种方法使用得较多。
1.4 MATLAB R2020a的工作环境
• 启动MATLAB R2020a后,进入如图1-12所示的MATLAB主界 面。MATLAB R2020a的主界面即用户的工作环境,包括菜 单栏、工具栏、开始按钮和各个不同用途的窗口。本节主 要介绍MATLAB各个交互界面的功能和操作。
当然,也可以输入多条命令,这时,各命令间要以逗号或分 号隔开。
当输入命令的语句过长,需要两行或多行才能输入,则要使 用“…”作连接符号,按回车键(Enter)转入下一行继续输 入。
命令行窗口中各字符的颜色不同,在默认情况下:关键字采 用蓝色;字符串采用褐红色;命令、表达式和运行结果采用黑 色。
此外,单击命令行窗口右上角的下三角图标并选择“取消停 靠”可以使命令行窗口脱离MATLAB界面成为一个独立的窗口; 选择独立命令行窗口右上角的下三角形图标并选择“停靠”, 可以使命令行窗口再次回到MATLAB主界面。
• 【例1-4-1】计算

基于MATLAB的尝试教学法在光学教学中的应用

基于MATLAB的尝试教学法在光学教学中的应用

教 学 改 革
M( : ,: ,2 ) = i 2 / ma x ( i 2 ) ; Mf : ,: ,3 ) = i 3 / ma x ( i 3 ) i ma g e ( M)
00
2 00
300
40 0
5 00
60 0
比较 图 2和 图 7 可 以看 出 , 光为 白 光时 , 最 初 几 级的 干 涉 条纹 和 我们 前边 分 析 的一 样 , 但 越 偏 离零 级干 涉 , 其 干涉 条 纹对 比 度下 降 ,光强 趋 向以某 一 固定值 , 条 纹对 比度 下降 , 则 光不 在相 干 , 为什 么会 出现 这种 现 象 呢 。这 8 寸 , 学 生可 以 通过 查 阅相 关 资料 , 老 师也 可 以引 导学 生 , 使 学 生对 光的 时 间 相干 性 有 一 些 了解 和 感 性 的认 识。 为以后 光的相干 性 的学习打 下伏笔 。 在 学生 完成此 例的 基础上 , 老 师可 以再给一 些相 关题 目, 让学 生多练 习 , 使 知识掌 握牢 固 。
基于MA T L A B的尝 试教学 法在光学教学中的应用
实是 不是 这 样呢 , 我 们 用 MA T L A B模 拟 一 下就 可 以知 道 了 。程 序
编 写如 下
M z e r o s ( 1 ,l e n g t h ( i ) ,3 1 : M( : ,: ,1 ) = i l / ma x ( i l ) ;
李晓 莉 ( 1 9 7 4一)女 , 博士 , 主要从 事超快 光 学方面 的研 究
( 上接 第 1 5 5页 )
的 需要 , 所以, 我们 应 该更 新 教育 观 念深 入认 识 高校 体育 教 育 工作 治 文 摘 .管 理 版 ,2 0 0 9 .

浅谈Matlab数值计算在傅里叶光学课程教学中的应用

浅谈Matlab数值计算在傅里叶光学课程教学中的应用

[摘要]将Matlab 数值计算融入傅里叶光学课程教学中,以光的衍射、透镜成像和传递函数为示例,展现其对教师理论讲授和学生能力培养的助力。

[关键词]傅里叶光学;数值计算;Matlab[中图分类号]G642[文献标志码]A[文章编号]2096-0603(2023)27-0109-04浅谈Matlab 数值计算在傅里叶光学课程教学中的应用杨慧哲*,梁永辉,刘进,万晶(国防科技大学前沿交叉学科学院,湖南长沙410073)傅里叶光学是光学领域中的一个重要分支,主要研究光的传播、成像等现象,以及傅里叶光学方法在这些现象中的应用。

傅里叶光学作为光电类专业人才培养计划中的核心课程之一,承接应用光学和物理光学两门光学基础课程,作用是利用物理光学所建立的电磁波理论对应用光学所描述的光学系统与仪器进行定量计算和评估。

光学系统的精确建模与定量评估是现代光学系统设计与应用的必备手段,也是光学工程专业必须具备的核心能力之一。

傅里叶光学本应成为这一核心能力构建的关键课程,但目前该课程普遍存在教学模式单一、理论推导过多、联系实际不足的问题,导致出现学生能力素质培养较弱的局面。

在教学中增加基于Matlab 编程语言的数值计算,一方面可以增强复杂理论推导的直观性,便于学生理解。

另一方面可以培养学生对光学系统建模的兴趣,通过实际案例的数值仿真建模提高应用理论知识解决实际问题的能力。

本文以光在自由空间的衍射(或传输)、光学系统成像和传递函数计算三个示例,浅谈如何将Matlab 数值计算应用到傅里叶光学课程教学中。

一、光在自由空间的衍射光的衍射(传输)是傅里叶光学(波动光学)中的一个重要概念,它在光学中起着至关重要的作用。

衍射现象的研究帮助我们理解光的波动性质,以及光的传播和干涉行为。

在光线通过物体或孔径时,光波会在边缘或物体表面发生弯曲和散射,从而产生衍射现象。

衍射图样的特征取决于多个因素,其中最重要的是光的波长和衍射孔径或物体的尺寸。

MATLAB在光学教学中的应用

MATLAB在光学教学中的应用

%94 )(9./0 ///=?
1 个次最大 $有 1 个最小值 # 以上的仿真结果与理
论结果相符合 $达到很好的演示效果 #
!"# 缝数 $%&
HE * ? * F STL I8 SH* : ? +U%IVIE D.2</? R L .8 R C ’0 /: B+U%IVIE D? DT)GE KO 8 ’J 2J ’: J F 4 9SI8 @DJ ADJ R L : ? HKE KL 4 9G8 SL 9@8 +U%IVIE D: : ? DT)GE KO 8 ’J 2J 2: J GE KO 8 R 8 M : J @D: ?
F +OP ! 如 F +OP1(Q J > E! 在 HF +OP 与 F +OP 之间设定等间距
的 D 个点 ! 然后在缝宽为 E 的 HE> 2 到 E> 2 范围内 设 置 D! 个 点 ! 即 把 缝 上 的 点 数 设 成 数 组 ! 缝 上 的 点数同样沿着 F 方向 ! 计算 D! 个点光源在屏幕上 某点的光程差和相位差以及光强 ! 以后再对屏幕
R和S式 !用 * +,-+. 仿真结 果 时 ! 首 先 确 定 图 案
在 9 !T 方 向 范 围 ! 如 可 取 9 O 3 ; 2! 因 为 干 UT8T O UT8MV 涉花样是在 9 方向上展开 ! 且是对称于 98" 的两 侧 ! 故可在 :9 OUT 到 9 OUT 的范 围 内 设 定 N 个 点 ! 如
’ %)
E 8%E "FG6 $H I J; $1 )))))) ))K
设光波长L8M""/NO O !2P8!Q M/O !3 /8!Q M/O # 根据

MatlabGUI在光学实验仿真中的应用

MatlabGUI在光学实验仿真中的应用

* 2011-06-04收到,2011-08-20改回** 基金项目:浙江省2011年大学生科技创新项目;湖州师范学院校级科研资助项目(201140)。

***付恋恋,女,1990年生,本科,研究方向:光学设计仿真。

文章编号:1003-5850(2011)10-0015-02Matlab GUI 在光学实验仿真中的应用Application of Matlab GUI to Optical Experiment Simulation付恋恋 蒋记望 陈芳芳 钱淑珍 吴平辉(湖州师范学院理学院 浙江湖州 313000)【摘 要】在光学拍理论的基础上,利用Matlab 图形用户界面的设计与开发功能,制作了简洁美观、可拓展性强的光学拍实验仿真平台。

结果显示,该平台具有人机界面友好、操作简单、参数可调、速度快、可移植性强等优点,为教学和研究工作开辟了新的途径。

【关键词】M atlab,图形用户界面,光学实验仿真,光学拍中图分类号:O 436.1文献标识码:AABSTRACT Ba sed o n t he pr inciple of o ptical beats,t aking adv ant age of t he desig n and dev elo pment function o f M atlab g raphic user inter face (G U I),a simple ,art istic inter face and w ell scala ble optical beat s ex periment s simulatio n platfor m w as cr eated.T he result sho w s that the platfor m has the advantag e of man -machine int er face fr iendly ,opera tio n simple ,par ameters adjust able ,speed ra pidly ,and hig h po rt ability .It o pens up a new w ay fo r teaching and r esear ch .KEYWORDS M atlab ,gr aphic user inter face ,o ptical ex periment simulation ,o ptical beat s M atlab 是M athw orks 公司推出的一套交互式、面向对象的程序设计语言,因具有强大的数值计算能力和系统模拟仿真等优点而得到广泛应用[1-6]。

MATLAB仿真及其在光学课程中的应用课件第五章 MATLAB在光电图像处理中的应用

MATLAB仿真及其在光学课程中的应用课件第五章 MATLAB在光电图像处理中的应用
转化。
• >> figure • >> imshow(I); • >> figure • >> imshow(X,map);
(a)原始灰度图像
(b)索引图像
• 5.3.3 im2bw函数 • im2bw函数通过设定一个阈值将灰度图像、索引图像、
RGB图像转换为二值图像。语法: • BW=im2bw(I, level) ,将灰度图像转化成二值图像。 • BW=im2bw(X, map, level),将索引图像转成二值图像。 • BW=im2bw(RGB, level),将RGB图像转化成二值图像。 • 其中,level是一个归一化阈值,取值在[0,1]。
灰度图像的转换。ind2rgb函数用于索引图像向RGB图像转 换。函数语法分别为:
• I= ind2gray(X, map)
• RGB=ind2rgb(X, map)
• 【例5-3-3】编写程序实现将一张灰度图像转化成索引图像。 • ◆ MATLAB程序如下: • >> I=imread('E:\3.jpg'); • >> [X,map]=gray2ind(I,32);% 调用gray2ind()函数进行图像
60 50 40 30 20 10 0
0
20
40
60
5.3 图像类型的转化
• 5.3.1 dither函数
• dither函数是采用抖动法来转换图像。该函数通过颜色抖动 来增强输出图像的颜色分辨率。该函数可以把RGB图像转换 成索引图像或把灰度图像转换成二值图像。函数语法:
• X=dither(A,map),该函数把RGB图像A按照调色板map转 换成索引图像X。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第四章 MATLAB在信息光学 中的应用举例
4.1 信息光学函数
• 4.1.1 矩形函数 • 1.一维矩形函数 • 一般形式矩形函数的表达式:
h
hrect
(
x
a
x0
)
h
/
2
0
| x x0 | 1/ 2 a
| x x0 | 1/ 2 a
| x x0 | 1/ 2 a
在MATLAB中,一维矩形函数可用函数rectpuls( )来实现。
• 【例4-1-3】用MATLAB画出标准阶跃函数。
• ◆ MATLAB程序如下:
1.2
• x=-3:0.01:3;
1
0.8
• y=heaviside(x); 0.6
step(x)
• plot(x,y,'k','LineWidth',2)
0.4
• axis([-3 3 -0.2 1.2])
0.2
• xlabel('x'); • ylabel('step(x)‘)
(a)三角孔原始图像 (b)傅里叶变换后的图像 (c)空间频谱 图4-8 三角孔衍射的光强分布和振幅谱
(a)矩形孔原始图像 (b)傅里叶变换后的图像 (c)空间频谱 图4-9 矩形孔衍射的光强分布和振幅谱
4.3 卷积定理
• 【例4-3-1】卷积定理的仿真。
• ◆MATLAB见M文件
• ◆仿真结果见书图4-11
0
0
-1
-0.5
0
0.5
1
0
1
2
3
x
x
(a)单位矩形函数 (b)一般形式矩形函数
图4-1 一维矩形函数
• 2.二维矩形函数 • 二维矩形函数的一般表达式为:
【例4-1-2】用MATLAB画出中心位于(0,1),边长为2×3的均 匀照明矩形孔的振幅透射系数。 ◆ MATLAB见M文件
1
0.8
0.6
Z
a b (x x0 ) / a ( y y0 ) / b
在MATLAB中,一维sinc函数可用函数sinc( )来实现。
• 【例4-1-5】用MATLAB画出中心在原点处的一维和二维sinc 函数图形。
• ◆ MATLAB见M文件
(a)sinc函数一维图形
(b)sinc函数二维图形
图4-5 中心在原点处的一维和二维sinc函数图形
0
-0.2-3
-2
-1
0
1
2
3
x
图4-3 阶跃函数图形
• 4.1.3 符号函数 • 符号函数的定义:
1 x a0
sgn(
x a
)
0
1
x a0 x a0
在MATLAB中,符号函数可用函数sign()来实现。
• 【例4-1-4】用MATLAB画出中心在原点处的符号函数图形。
• ◆ MATLAB程序如下:
图4-15 输出全息透镜图像
• 4.4.2 二元傅里叶变换全息图 • 【例4-5-2】二元傅里叶变换计算全息图的制作。 • MATLAB见M文件
图4-16 MATLAB绘制 的字符“E”
图4-17 字符“E”的MATLAB 模拟计算全息图
图4-18 字符“E”的MATLAB 模拟计算全息图的再现图像
-2 -1.5 -1 -0.5
0
0.5
1
1.5
2
x
图4-4 符号函数图形
• 4.1.4 sinc函数

一维 sinc函数的定义为:
sin c( x x0 )= sin (x x0 ) / a
a
(x x0 ) / a
二维 sinc函数的定义为: sin c( x , y ) sin (x x0 ) / a sin ( y y0) / b
g2 P
He-Ne Laser
g1 激光光束 M
图4-10 卷积定理光路图
4.4 傅里叶透镜的仿真
• 【例4-4-1】傅里叶透镜成像的仿真。 • ◆MATLAB见M文件 • ◆仿真结果见书图4-13
4.5 计算全息
• 4.5.1 全息透镜 • 【例4-5-1】全息透镜的仿真。 • MATLAB见M文件
0.4
0.2
0 4
2
3
2
Y0 -2
1
-1
0X
-2
-4 -3
图4-2 二维矩形函数图形
• 4.1.2 阶跃函数 • 一般形式的阶跃函数定义为:
0
step(
x-x0 a
)
1 1
2
x a x0 / a x a x0 / a x a x0 / a
在MATLAB中,阶跃函数可用海维赛德函数heaviside来实现。
• 【例4-1-1】用MATLAB画出中心在原点的单位矩形脉冲和中 心在1.5、脉宽为2、高度为1.5的矩形脉冲。
• ◆ ATLAB程序见M文件
rect(x) h*rect((x-x0)/w)
单位矩形函数
一般形式矩形函数 1.6
1.4 1
1.2
0.8 1
0.6
0.8
0.4
0.6
0.4 0.2
0.2
• x=-2:0.01:2; • y=sign(x); • plot(x,y,'k','LineWidth',2) • axis([-2 2 -1.1 1.1]) • xlabel('x'); ylabel('sgn(x)‘)
sgn(x)
1
0.8
0.6
0.4
0.2
0
-0.2
-0.4
-0.6
-0.8
-1
• 4.1.5 高斯函数 • 一维高斯函数的定义:
Gaus(
x
x0 a
)
exp
x
x0 a
2
二维高斯函数的定义:Gaus(x a Nhomakorabea,
y b
)
exp
x a
2
y b
2
• 【例4-1-6】用MATLAB画出一维和二维高斯函数图形。 • ◆ MATLAB见M文件
(a)高斯函数一维图形
(b)高斯函数二维图形
图4-6 中心在原点处的一维和二维高斯函数图形
4.2 傅里叶变换
• 【例4-2-1】利用MATLAB语言绘制圆孔输入物。 • ◆ MATLAB见M文件
思考:怎样绘制方 孔、十字、三角孔 等物体?
图4-7 圆孔输入物
• 【例4-2-2】三角孔和矩形孔的傅里叶频谱观察。 • ◆ MATLAB见M文件
相关文档
最新文档