杨 坤 苏玉玲 沈 岩 王永强
(郑州轻工业学院技术物理系,河南郑州 450002)
LabVIEW与Matlab在信息光学教学中的应用
杨 坤 苏玉玲 沈 岩 王永强
(郑州轻工业学院技术物理系,河南郑州 450002)
计算机仿真技术已经被广泛应用到教学和科研中.将 LabVIEW和Matlab引入信息光学课程教学中,通过设计相关的程序,可使复杂的物理理论以形象直观的实验仿真表现出来.经过实践证明,该措施可提高学生的学习兴趣和教学质量.
信息光学;LabVIEW;Matlab;空间滤波;夫琅禾费衍射
信息光学是应用光学、计算机和信息科学相结合而发展的一门新的光学学科,是信息科学的一个重要组成部分,也是现代光学的核心.信息光学的主要思想是将通信理论中“系统”的观点和数学上的傅里叶分析方法引入光学,更新了传统光学的概念,丰富了光学学科的内容[1].
信息光学课程的主要内容包括标量衍射理论、光学成像性质的频率特性和空间滤波等.这些内容概念比较抽象,逻辑推理能力要求比较强,如果没有相应的实验与之结合,教学效果将大打折扣.目前,很多高校都在压缩必修课的比例而将信息光学列为相关专业的选修课,并且没有开设相关的课程实验.为了提高教学效果,我们将基于LabVIEW和Matlab的光学仿真引入到课堂教学中,实践证明,该措施明显提高了信息光学的教学质量,提升了学生的独立思考和解决实际问题的能力.
LabVIEW是美国国家仪器公司推出的一种基于计算机的虚拟仪器开发平台,自 1986年第一个版本问世以来,就以图形化的编程理念在工程业界中引起了广泛的关注.它是一个具有革命性的图形化开发环境,它内置数据采集、信号分析与数据显示功能,摒弃了传统开发工具的复杂性,从简单的仪器控制、数据采集到过程控制和工业自动化系统,LabVIEW都得到了广泛的应用.由于LabVIEW采用了图形化的编程语言,因此LabVIEW又称为 G语言[2].
Matlab是美国Math Works公司出品的商业数学软件,用于算法开发、数据分析以及数学计算的高级技术计算语言和交互式环境.Matlab可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通信、图像处理、信号检测、金融建模设计与分析等领域[3].
LabVIEW编程简单方便,界面形象直观;Matlab功能强,效率高,有可靠的数值运算功能和强大的绘图功能.利用LabVIEW或Matlab进行光学仿真已经得到国内不少学者的关注[4~7],本文将结合 LabVIEW和Matlab的优点,采用两者相嵌套的方法实现了对信息光学相关内容的仿真.
考虑无限大不透明屏上的有限孔径Σ对单色平行平面光的衍射.设衍射屏是平面的,其上附有直角坐标系 (x1,y1),Σ后的光场分布记为 U1(x1,y1).设观察屏平面与衍射屏平行,两个平面之间的距离为 z,观察平面上的光场分布记为 U0(x0,y0).衍射屏与观察屏上的 x,y坐标轴彼此平行.假设孔径Σ与观察平面之间的距离 z远大于孔径Σ的最大限度,只考虑在观察平面上 z轴附近的一个有限小区域,则观察屏上的光场 U0(x0,y0)可表示为
式中,λ是入射光波长;r01是孔径到观察点的距离;k为波矢.
如果只考虑 z轴附近的区域,有 z≫ |x0-x1|2,|y0-y1|2,在此条件下可将式 (1)化简为
式 (2)称为菲涅尔衍射公式.
式 (3)称为夫琅禾费衍射公式.
由于在研究实际的衍射问题时,往往只需研究衍射花样的相对强度分布,故式 (3)可简化为
用一幅二值图像代替原物,利用 LabVIEW的“Read BMP File”函数读取图像,并转化为数据.一路通过“Draw Flattened Pixmap”函数将原图片显示在前面板上,另一路数据首先通过数据转化将布尔数组转换为数据数组,然后送至Math Script节点,由 Matlab进行处理.利用 Matlab中的 fft2()命令对图像数据进行二维离散傅里叶变换,得到图像的频谱,该频谱是一个复数矩阵,然后用 abs()对该复数矩阵进行取模,得到振幅谱矩阵.由于变换后的二维矩阵的直流分量位于图像的周边角,再利用 fftshift()命令对取模后的矩阵进行频谱位移,使直流分量移到频谱中心.最后将处理后的图像数据以灰度图格式在前面板上显示.该仿真程序的前面板和程序框图如图1和图2所示.
图1 夫琅禾费衍射仿真实验前面板
作为例子,我们对矩形孔和单缝进行了实验仿真,仿真的结果如图3和图4所示.
仿真结果可使同学们清楚看到矩形孔在某方向上的线度与衍射图样上同方向的条纹的间隔成反比.对于单缝来说,由于衍射屏竖直方向的线度比较小,所以在观察屏上的水平方向上不存在分离的衍射条纹.
空间滤波系统是光学信息处理中较简单的处理方式,利用了透镜的傅里叶变换特性,在其频谱面上插入适当的滤波器,借以改变物的频谱,从而使物图像得到改善.
4f系统是一种典型的空间滤波系统,光路结构图如图5所示.由相干点源 S发出的单色球面波经透镜 Lc准直为平面波,垂直入射到输入平面P1上.P2为频谱平面,P3为输出平面.
图5 4f空间滤波系统光路图
设物的复振幅透过率为g(x1,y1),则频谱面上的频谱函数为
实验仿真以一网格图为例,观察通过低通滤波器、高通滤波器、水平方向滤波器和竖直方向滤波器后的图片效果.与夫琅禾费衍射实验仿真类似,图像读取和显示利用 LabVIEW实现,图像处理利用Matlab相关命令实现.前面板和程序框图如图6和图7所示.
图6 空间滤波仿真实验前面板
图8和图9分别是选择低通滤波器和水平方向滤波器的实验仿真.图8表明使用低通滤波器滤波时,像平面的像是一大致均匀的光场,它代表的是物的本底;图9表明使用水平方向滤波器滤波时,在像平面上只呈现像的垂直结构,这说明了频谱面上的横向分布是物的纵向结构的信息.
所以通过空间滤波仿真实验,可直观明确地对空间滤波的作用进行演示,为同学们进一步学习光学信息处理打下基础.
通过文中的几个实例可以看出,利用LabVIEW和Matlab进行信息光学课程的实验仿真,结合了 LabVIEW和 Matlab的优点,不需要大量烦琐的编程过程,显示直观.在信息光学的教学中引入实验仿真内容,更易于学生理解复杂的物理理论,提高学生的学习兴趣,从而提高了教学效率.将实验仿真和理论教学联系起来,也丰富了教学手段,推动了基础课程教学方法的现代化进程.
[1] 王仕璠.信息光学理论及应用[M].北京:北京邮电大学出版社,2004
[2] 刘刚,王立香,张连俊.LabVIEW 8.20中文版编程及应用[M].北京:电子工业出版社,2008
[3] 张志涌.精通Matlab 6.5版[M].北京:北京航空航天大学出版社,2003
[4] 胡志丹,张钰,房熊俊,平澄.基于 LabVIEW的衍射自动演示仪的设计[J].物理实验,2009,29(3):14~16
[5] 陈颖,黄文达.基于Labview的光学空间滤波远程虚拟实验[J].光子学报,2008,37(5):1071~1076
[6] 吕文华.Matlab在信息光学教学中的应用[J].潍坊学院学报,2007,7(6):153~155
[7] 谢家兴,王建,代秋芳,林栋梁.基于Matlab的傅里叶变换光学仿真[J].光学学报,2009,29(s):130~133
APPLICATIONS OF LABVIEW AND MATLAB IN INFORMATION OPTICS TEACHING
Yang Kun Su Yuling Shen Yan Wang Yongqiang
(Department of Technical Physics,Zhengzhou University of Light Industry,Zhengzhou,Henan 450002)
Computer simulation technology has been widely applied to the teaching and scientific research.In this paper,we introduced LabVIEW and MATLAB to the teaching of information optics.The complex physical theory can be expressed by the visual experiment simulation through the relevant program design.According to practice,this method can enhance the learning interest of students and teaching quality.
information optics;LabVIEW;Matlab;spatial filtering;fraunhofer diffraction
2010-04-30;
2010-07-16)
杨坤 (1980年出生),男,讲师,博士,主要从事光电测量、信息光学处理等方面的研究.