计算全息实验.docx
《计算全息实验.docx》由会员分享,可在线阅读,更多相关《计算全息实验.docx(10页珍藏版)》请在冰豆网上搜索。
计算全息实验
计算全息实验
计算全息是利用计算机设计制作全息图或衍射光学元件的技术。
从原理上,计算全息和光学全息没有什么
本质差别,所不同的是产生全息图的方法。
光学全息是直接利用光的干涉特性,通过物波和一束相干参考波的
干涉将物波的振幅和位相信息转化成一幅干涉条纹的强度分布图,即全息图。
光学全息记录的物体必须是实际
存在的。
而计算全息则是利用计算机程序对被记录物波的数学描述或离散数据进行处理,形成一种可以光学再
现的编码图案,即计算全息图。
他不需要被记录物体的实际存在。
由于计算全息图编码的多样性和波面变换的
灵活性,以及近年来计算机技术的飞速发展,计算全息技术已经在三维显示、图像识别、干涉计量、激光扫
描、激光束整形等研究领域得到应用。
最近计算全息领域的新进展是利用高分辨位相空间光调制器实现了计算
全息图的实时再现,这种实时动态计算全息技术已经在原子光学、光学微操纵、微加工、软物质自组织过程的
控制等领域得到成功的应用,显示了计算全息技术的巨大应用发展前景。
计算全息除了其在工业和科学研究方面的应用价值,也是一个非常好的教学工具。
要做好一个计算全息
图,既要熟悉衍射光学、光全息学等物理知识,还要了解抽样理论、快速傅里叶变换、调制技术和计算机编程
方面的知识。
这些知识对于物理类和光电信息技术类专业的学生和研究人员都是不可缺少的。
1:
通过设计制作一计算全息图、利用高分辨液晶空间光调制器(LCD)实时再现该计算全息图、观察再现结果、并利用CCD记录再现像等实验内容,掌握计算全息图的编码原理,加深对光全息原理,光的干涉和衍射特性
的认识,训练使用空间滤波器、空间光调制器(LCD)、CCD图像采集等重要的现代光学实验装置进行数字光学实验的能力。
同时初步了解Matlab语言在光学中的应用。
2
本实验以经典的迂回相位型计算全息图设计制作过程为例,介绍计算全息的基本原理。
一般说来,计算全
息图的制作大致可分成下述五个步骤(如图8-4-1):
1.选择物体或波面,给出其数学描述或离散数据。
2.计算物波在全息图面上的光场分布。
3.把上述光场分布编码成全息图的透过率变化。
4.输出:
光学缩版或微加工。
5.光学再现。
制作一张傅里叶变换计算全息图的典型流程如图1所示。
对于用高分辨空间光调制器实时再现的情况,上述第4步的照相缩版或微加工步骤可以省去。
下面我们就对迂回相位型计算全息图的制作过程进行详细地介
绍。
2.1
数字计算机通常只能对离散的数字信号进行处理,并以离散的形式输出。
因此,制作计算全息图的第一步
是对物波函数进行抽样。
设待记录的物波函数为
(8-4-1)
其傅里叶变换(空间频谱)为
(8-4-2)
为满足抽样定理(见附录)的要求,物波函数及其空间频谱函数必须是带限函数,即
(8-4-3)
在此条件下,根据抽样定理,对物函数及其频谱函数的抽样间隔应为:
(8-4-4)
取(4)式中的等号,抽样单元总数是相同的。
2.2
对于傅里叶变换全息图,全息图上记录的是物波的空间频谱F(u,v),因此必须对物波函数进行离散傅里叶变换。
离散傅里叶变换的公式如下:
](8-4-5)
为了减少运算时间,通常采用快速傅里叶变换(FFT)算法。
计算结果一般为复数:
(8-4-6)其振幅和位相可分别表示为:
(8-4-7)2.3
编码的目的就是将计算出的全息图面上的复振幅函数转化成实值函数。
从编码函数构造的角度来说,计算全息技术主要有两大类:
纯计算编码型和光学模拟型。
二者的主要差别是,前者的编码函数是人为构造出来的,后
经数学证明和实验验证,可以再现物光。
因此这一类全息图是计算全息术所特有的,没有传统的光学全息图与之对应。
而后者呢,顾名思义,其编码函数是在研究传统光学全息图透过率函数的基础之上构建起来的,可以说
是用计算机来模拟光学记录过程绘制全息图。
当然,这不是简单地模拟,而是以原全息图透过率函数为出发
点,仔细研究其物理数学本质,进而构造出既便于计算处理又不损失信息的编码函数。
下面简要介绍Lohmann等人提出的迂回相位型计算全息图的编码方法。
一般说来,对于光波的振幅进行编码比较容易,例如可以通过控制全息图上抽样单元的透过率或开孔大小
来实现。
但是,对于光场的相位信息进行编码则相对比较困难。
虽然从原理上可以通过改变抽样单元的厚度或
折射率来实现相位调制,但实际制作非常困难。
美国科学家Lohmann巧妙的利用了不规则光栅的衍射效应,提出了迂回相位编码方法。
如图8-4-2所示,当用一束平面波垂直照明一栅距d恒定的平面光栅时,产生的各级衍射光仍为平面波,
等相位面为垂直于相应衍射方向的平面。
根据光栅方程,光栅的任意两条相邻狭缝在第K级衍射方向的光程差为:
(8-4-8)是等相位的。
如果某一点的狭缝位置有偏差,如栅距增大了Δ,则该处在第K级衍射方向的衍射光的光程差变为,从而导致一附加相移:
(8-4-9)
Lohmann称这种位相为迂回位相。
迂回位相的值与相对偏移量Δ/d和衍射级次K成正比,与入射光波的波长无关。
迂回相位效应表明,通过局部改变狭缝或开孔位置,可以在某个衍射方向得到所需要的位相调制。
Lohmann正是基于这一原理提出了迂回相位编码方法。
其基本思想是,在全息图的每个抽样单元中,放置一个
通光孔径,通过改变通光孔径的面积来实现光波场的振幅调制,而通过改变通光孔径中心距抽样单元中心的位
置来实现光场相位的编码。
通光孔径的形状可以是多种多样的,可根据实际情况来选取。
图8-4-3所示是采用矩形通光孔径编码的计算全息图的一个抽样单元的示意图。
图中,δx和δy为抽样单元的抽样间隔,Wδx为开孔的宽度,Lmnδy为开孔的高度,Pmnδx为开孔中心到抽样单元中心的距离。
我们可以
选取矩形孔的宽度参数W为定值,用高度参数Lmn和位置参数Pmn来分别编码光波场的振幅和位相。
设待记录光波场的归一化复振幅分布函数为:
(8-4-10)则孔径参数和复振幅函数的编码关系为:
(8-4-11)
利用这种方法编码的计算全息图的透过率只有0、1两个值,故制作简单,抗干扰能力强,对记录介质的非
线性效应不敏感,可多次复制而不失真,因而应用较为广泛。
在上述编码中,根据实际情况的需要,也可以固
定孔径的面积不变,而通过改变开孔的透过率来编码光波的振幅信息。
2.4
当计算机完成了计算全息图的编码后,下一步就是以适合光学再现的尺寸和方式输出计算全息图。
通常,
适合光学再现的计算全息图上每个抽样单元的大小须在微米量级。
这就需要专门的光学缩微照相系统或微光刻
系统。
在要求较低的情况下也可以用照相机将显示在计算机屏幕或打印输出的计算全息原图缩拍到高分辨感光
胶片上,通过显影定影等处理得到可用于光学再现的计算全息图。
近年来,随着高分辨电寻址空间光调制器的
发展,像元尺寸在微米量级,像素数超过1百万的振幅型或相位型空间光调制器已经完全实用化。
因此也可以
利用这种空间光调制器代替全息干板,实现计算全息图的实时输出和再现。
计算全息图实时输出和再现技术的
进展为计算全息图的更广泛应用提供了可能和新的空间。
本实验中,我们就是利用一高分辨电寻址液晶空间光
调制器来实现计算全息图的实时输出和再现。
2.5
迂回相位型计算全息图的光学再现方法与普通光学全息图类似。
图8-4-4所示为用液晶光调制器(LCD)
实时输出的计算全息图的光学再现光路示意图。
用准直激光束垂直照明LCD,在傅里叶变换透镜L1的后焦面上就可观察到傅里叶变换型计算全息图的再现结果。
根据迂回位相编码原理,再现象出现在某个衍射级次K
上,只有在该衍射方向,全息图才能再现出我们所期望的波前f(x,y)。
为了避免零级项和其他衍射级次对再现像的影响,可在透镜后焦面上用一滤波孔径F将再现像提取出来。
3
(1)阅读实验讲义和有关参考文献,熟悉计算全息原理.
(2)计算全息编码。
采用迂回相位法,用你所熟悉的任何一种计算机语言设计制作一幅傅里叶变换型计算机全息
图.作为实例,附录中提供了一个具有详细说明的用Matlab编程语言编写的迂回位相计算全息编码程序。
熟悉
并应用该程序实际设计制作有关计算全息图。
设计参数要求:
计算全息图的总点阵数为1024*768或1024*1024;产生的图形文件格式为灰度256级bmp格式文件.首先用画笔制作两幅点阵数分别为64*64和128*128的黑白图案作为被记录物体。
适当选择每个编码单元的点阵数,振幅编码分别用二值法和256级灰度值法,设计制作几幅计算全息图。
(3)观察并记录利用计算机程序对设计制作计算全息图进行模拟再现的结果。
(4)根据图4所示的光路建立并调整计算全息图的光学再现光路。
(5)将编码好的计算全息图分别显示到实验实提供的液晶空间光调制器上,在傅里叶变换透镜后焦面上放置毛玻
璃或观察屏,观察再现结果,记录实验情况和观察结果。
注意:
实验中绝对禁止用手触摸液晶片及光路中的所有
光学表面。
(6)去掉毛玻璃屏,用小孔滤波屏提取再现像,通过成像透镜L2用CCD记录再现结果.4.:
(1)简述计算全息编码原理.
(2)给出计算全息编码程序流程图、程序代码及有关设计参数。
(3)说明实验再现过程,给出再现光路,有关实验参数,实验观察及结果。
(4)对本实验给出总结、说明和讨论。
5.
(1)与光学全息照相比较,计算全息有哪些优点?
(2)如果用倾斜的准直激光束照明计算全息图,再现象的位置有何变化?
(3)二元振幅编码和灰度级振幅编码计算全息图的再现结果有什么差别?
(4)用汇聚光照明计算全息图时,观察屏应放在什么位置?
(5)试分析透镜L1后焦面上的光场分布与LCD的透过率函数之间的关系。
这种关系有什么应用价值6
(1)光全息实验讲义
(2)计算全息实验讲义
(3)苏显渝等,《信息光学》,科学出版社,1999年第一版,159-194
(4)M.L.Huebschman,etal,“Dynamicholographic3-Dimageprojection”,OPTICSEXPRESS,Vol.11,No.5,
437(2003)
Matlab
1.用你所熟悉的作图工具设计一幅64*64点阵和一幅128*128点阵的黑白或灰度图像。
以用Windows附件中的“画笔”为例,操作过程如下:
(1)点击“开始”-“程序”-“附件”-“画图”,打开画笔工具。
(2)点击“图像”-“属性”,设置图像为64*64像素。
(3)用画笔中的作图工具设计图像。
图像可以使文字,也可以是简单的线条画。
所用线条要尽量粗一些。
(4)图象设计好后,将文件保存到目录D:
\JWSY\Temp中,文件名自行设定。
保存格式为256色位图(bmp格式)。
(5)重复步骤
(2)到(4),再设计一幅128*128像素的图像并存盘。
(6)关闭画笔程序,回到Windows初始界面。
2.打开Matlab5.3界面:
点击“开始”-“程序”-“Matlab”-“Matlab5.3”.
3.设定工作目录:
输入“cdD:
\JWSY\Temp”,并按回车键(Enter)。
要想显示该目录中的文件列表,可用“dir”命令。
4.Matlab显示界面的设定:
运行程序”SetScreen”(该程序的详细代码在SetScreen.m文件中),产生两个显示界面。
5.输入需要编码的物体。
运行“ObjInput”.
6.给物体加随机位相。
运行“RandPhase”.等价于让光通过一个毛玻璃照明物体。
7.对物波进行傅里叶变换,得到物波的空间频谱。
运行“ObjFourierTrans”.从光学上相当于将物体放在一透镜的
前焦面上并用平面照明时,在后焦面上的光场分布。
这是衍射光学中一个非常重要的性质。
8.计算全息编码。
使用最基本的Lohmann型迂回相位编码方法,运行“LohmannBinary”.9.模拟再现。
对编码全息图进行傅里叶变换。
运行“CghFourierTrans”.相当于将计算全息图放在另一透镜的前焦
面上时,在其后焦面上的光场分布.
10.计算全息图的输出。
将设计好的计算全息图及其模拟再现结果以适当格式保存到图形文件中。
运行
“CghSave”.
11.要设计新的全息图。
可重复运行上述5-10步骤。
12.要想采用不同的编码方法,可相应改变步骤8的运行程序。
如四阶迂回相位编码的程序名为“LeeFourGray”.
以傅立叶变换全息图为例
物波频谱的离散形式:
(物体尺寸为DX*DY,谱面抽样间隔dm=1/DX,dn=1/DY)
(2)
其逆傅立叶变换:
(3)计算全息图每个抽样单元的透过率:
(4)该计算全息图的透过率函数为:
(5)设照明波:
透射波的逆傅立叶变换为:
(6)取以下近似:
(7)(6)简化为:
(8)令
当照明光方向满足为整数,得到以下编码关系:
为在x=0附近获得最大衍射效率,M'和W取值应使亮度因子的值最大.当时,
又最佳亮度因子
因此,应有