基于Matlab的三维相位型全息图设计

全息技术的不断发展使社会步入了一个发展迅速的新领域,由于三维显示技术可以使观察者更容易接受,其发展速度十分迅速,基于计算全息的三维全息图的设计方法有很多种,其中层析法的设计最为流行,可以利用计算机模拟所需的三维物体,通过算法的不断迭代优化计算出所需的全息图。

如图选用目标图像为三维物体的小火车,对其进行三维相位型全息图的设计,目标图像分为强度图与深度图,深度图是根据3Dmax软件对其进行渲染得到的,因此深度图也就代表了火车在空间的深度信息;强度图也就代表了其强度信息。

基于Matlab的三维相位型全息图设计_第1张图片

 

基于Matlab的三维相位型全息图设计_第2张图片

(a)强度图                            (b)深度图

图1 目标图像

定义再现距离为300mm,目标图像的深度为30mm,因此总体深度范围为300-330mm,根据灰度值对其进行划分,总共划分为256层。具体程序设计步骤为:

1.初始参数定义:波长、像元大小与尺寸、目标图像、填充比例等。

2.利用“im2double”与“imread”函数读入强度图与深度图,然后对深度图进行处理,采用均值划分将其按照目标图像的深度信息对其进行深度划分。

3.采用优化算法进行迭代设计计算,优化算法也就是所采用的的菲涅尔正逆衍射、傅里叶正逆衍射、角谱正逆衍射(即自定义函数“Fresnel”、“Fourier”、“Angular spectrum”)不断优化全息面的复振幅分布。

4.对最终优化结果全息面的复振幅分布进行编码,编码采用我们自己定义的编码方式。

5.采用“imwrite”函数进行保存全息图。

计算得到的相位全息图如下图2所示。

基于Matlab的三维相位型全息图设计_第3张图片

图2 相位全息图

然后我们对其进行模拟再现,再现即选用上述迭代运算第3步的单次计算公式,导入设计好的计算全息图,通过改变不同的再现距离即可。选用步长为5mm再现结果如下图3所示。

基于Matlab的三维相位型全息图设计_第4张图片

基于Matlab的三维相位型全息图设计_第5张图片

基于Matlab的三维相位型全息图设计_第6张图片

(a)z=300mm       (b)z=305mm        (c)z=310mm

基于Matlab的三维相位型全息图设计_第7张图片

基于Matlab的三维相位型全息图设计_第8张图片

基于Matlab的三维相位型全息图设计_第9张图片

(d)z=315mm        (e)z=320mm        (f)z=325mm

基于Matlab的三维相位型全息图设计_第10张图片

(g)z=330mm

图3不同再现距离下的再现结果

最后我们也对彩色全息进行了设计,选用如下图4所示的目标图像“蒙娜丽莎”进行模拟计算,得到其三个分量的再现像,其设计结果与上述三维全息不同,通过控制三原色的不同分量即(R、G、B)进行不同参数的计算,也就是不引入那么复杂的深度信息,但是要合理的控制三原色的初始参数。将设计的全息图如图5所示进行全息再现得到的结果如下图6所示。

基于Matlab的三维相位型全息图设计_第11张图片

图4 彩色全息目标图像

基于Matlab的三维相位型全息图设计_第12张图片

图5 彩色相位全息图

基于Matlab的三维相位型全息图设计_第13张图片

基于Matlab的三维相位型全息图设计_第14张图片

基于Matlab的三维相位型全息图设计_第15张图片

R分量             G分量             B分量

基于Matlab的三维相位型全息图设计_第16张图片

图6 再现结果

针对全息显示技术的发展十分迅速,因此对全息图的设计也是比较复杂的,其工作难点全是在全息图的设计优化过程中。

最后,有相关需求欢迎通过公众号"320科技工作室"联系我们

你可能感兴趣的:(matlab,全息投影,全息图)