一种基于光线跟踪算法的光场显示设备仿真方法与流程

文档序号:13392466阅读:310来源:国知局

本发明涉及三维显示技术领域,更具体地,涉及一种基于光线跟踪的光场显示设备仿真方法。



背景技术:

人类视觉的一项重要功能是认知三维(3d)自然界中物体的3d空间布局,直观地分析和判断目标和场景状况。目前现代信息科技视觉表达主要利用二维方式进行采集、存储、编码、传输及显示,只能使人们了解到场景或物体的某个空间侧面,从而限制了人们的全面认识。符合人类认知习惯的3d光显示能够更真实地重现或模拟与客观世界相同的场景,增强表达图像的深度感、层次感和真实性。在医学成像、科学研究、外太空探索、重要远程会议和军事等应用领域中,3d信息的重构有助于直观精确地捕捉到有关信息,从而得到更精准的现场判断。在智能制造领域中,保持稳健的优化设计,实现3d结构的柔性智能加工、3d装配的模拟与控制、3d数据的高效处理和3d光显示,对于完善制造过程、提高先进智能制造的设计效率、加快生产过程并提高成品率、实现高效可靠的智能装配至关重要。在3d游戏行业、3d广告视频显示、3d影视等方面,高性能裸眼动态光显示技术的突破和发展会推动整个3d产业链的飞速发展,从而带动我国战略性新兴产业和现代服务业的发展,产生巨大的经济效益。

光场三维显示方法是近似模拟3d场景真正光场的重建方式,具有较好的发展前景。光场三维显示系统是一种自由立体式三维显示设备,具有视场角大、视点密集、可同时提供水平视差和竖直视差的优势。光场显示系统主要由液晶显示器、透镜阵列、全息功能屏三部分构成,结构的复杂。传统的自由立体式显示系统的设计中,通常无法准确估计显示系统的显示效果,需要反复实验才能得到合适的参数,设计和加工耗时耗力。

传统的成像、照明光学设计软件(zemax,lighttools,codev等)擅长数值仿真,对成像系统的进行数值分析,但对成像效果模拟支持并不好,所得数值结果抽象难以理解,无法提供直观的仿真结果,并且无法做到实时计算;其次,传统方法擅长对单一透镜或者透镜组的参数进行局部优化,而遇到复杂结构光学系统时,很容易会掉进局部最优的“陷阱”难以寻找到真正的最优结构。



技术实现要素:

本发明提供一种克服上述问题或者至少部分地解决上述问题的一种基于光线跟踪的光场显示设备仿真方法,解决了现有技术中无法提供直观仿真结果、无法实时计算,且对复杂结构光学系统不适用的问题。

根据本发明的一个方面,提供一种光场显示设备仿真方法,包括:

s1、建立光场的三维显示模型;

s2、获取光场显示仿真图像中每个像素的光线起点和光线方向;

s3、根据光线起点和光线方向,利用光线跟踪渲染技术渲染得到光场显示仿真图像。

作为优选的,所述步骤s1具体包括:

分别建立lcd面板、透镜阵列、全息功能屏的数学模型;

将lcd面板、透镜阵列、全息功能屏组合建立光场的三维显示模型。

作为优选的,所述三维显示模型中,lcd面板、透镜阵列、全息功能屏依次排列,且满足:1/f=1/l+1/k,其中,f为透镜阵列中透镜的焦距,l为透镜阵列与全息功能屏的间距,k为透镜阵列与lcd面板的间距。

作为优选的,所述步骤s2中,选取三维空间内任一点o作为针孔相机模型顶点,并设置针孔相机模型的图像分辨率、相机坐标矢量基,建立针孔相机模型,并确定光场显示仿真图像中每个像素的光线起点和光线方向,利用逆向光线跟踪的方法对光场显示效果的仿真图像进行渲染。

作为优选的,所述步骤s2具体包括:

在三维显示模型靠近hfs一侧设置顶点o的位置,并设置针孔线机模型的图像分辨率2a×2bpixels、相机坐标系单位矢量基u、v、w,渲染图像平面与顶点o之间的距离distance,图像像素在虚拟空间中的长度l;

获取渲染图像平面中某一像素点,并获取该像素点的像素索引序号[x,y],并根据预设公式获取该像素点三维空间中的坐标及视角方向。

作为优选的,所述像素点坐标的预设公式为:

p=o+distance·w+(x+0.5-a)·l·u+(y+0.5-b)·l·v

像素点的视角方向预设公式为:

d=p-o=distance·w+(x+0.5-a)·l·u+(y+0.5-b)·l·v

上式中,p为像素点坐标,d为p点的视线方向,像素序号索引范围为为[0,0]~[2a,2b]。

作为优选的,所述步骤s3中,通过调用光线跟踪函数,对每个像素点的颜色值分别独立计算,将光线的起点和方向作为光线跟踪的输入参数,获得每个像素点的颜色值。

作为优选的,所述步骤s3具体包括:

s31、获取光线分别与全息功能屏、透镜阵列、lcd面板模型的交点,并得到最近交点;

s32、判断该交点是否为光源,若是则返回光源颜色值,若否则判断光线与模型相交时是否发生反射、折射,并递归调用新的光线跟踪函数,得到光线最终返回的颜色值;

s33、根据返回颜色值及反射率、折射率得到像素点的颜色值。

作为优选的,所述步骤s32具体包括:

若交点为光源,则返回光源颜色值c,光线跟踪结束;

若交点不为光源,则判断光线与模型是否发生反射,若否则返回颜色值c1=0,若是则生成反射光线,递归调用型的光线跟踪函数,反射光线返回颜色值c1;

进一步判断光线与模型是否折射,若否则返回颜色值c2=0,若是则生成折射光线,递归调用型的光线跟踪函数,折射光线返回颜色值c2。

作为优选的,所述步骤s33中,若交点不为光源时,返回颜色值c=c1*反射率+c2*(1-折射率)。

本申请提出一种基于光线跟踪的光场显示设备仿真方法,通过建立三维显示模型,使得在没有进行实验操作的前提下,可以实时得到光场显示的结果,可以让设计者对所设计的系统有直观的认识。依照现实中光场系统每个组件的大小尺寸、几何形状和光学特性建立数学模型,构建虚拟场景,利用逆向光线跟踪,渲染得到光场成像的结果。通过调整虚拟针孔相机模型的位置、更换光场显示的内容等方法,可以对光场成像系统的视角范围和景深等指标进行预测。采用逆向光线跟踪技术,并且采用多种包围盒加速结构,为了提高渲染效率,达到实时可交互的目的;对光场显示中所有的光学设备建立严格的数学模型;并采用蒙特卡洛方法,对渲染的每个像素进行多次采样,保证了仿真结果的准确性。

附图说明

图1为根据本发明实施例的光场显示设备仿真方法流程框图;

图2为根据本发明实施例的朗伯体辐射模型示意图;

图3为根据本发明实施例的透镜模型及透镜阵列示意图;

图4为根据本发明实施例的光线遇到hfs后发生散射现象示意图;

图5为根据本发明实施例的针孔相机模型示意图;

图6是根据本发明实施例的光线跟踪的基本原理示意图;

图7是根据本发明实施例的光线跟踪技术中计算像素颜色值流程图;

图8是根据本发明实施例的逆向光线跟踪的计算过程示意图。

具体实施方式

下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。

如图1所示,图中示出了一种基于光线跟踪的光场显示设备仿真方法,包括:

s1、建立光场三维显示模型;

s2、获取光场显示仿真图像中每个像素的光线起点和光线方向;

s3、根据光线起点和光线方向,利用光线跟踪渲染技术渲染得到光场显示仿真图像。

在本实施例中,所述步骤s1包括:

分别建立lcd面板、透镜阵列、全息功能屏的数学模型;

将lcd面板、透镜阵列、全息功能屏组合建立光场的三维显示模型。

在建立光场的三维显示模型时,需要对各模型的参数进行设定,包括下表中的参数:

在本实施例中,具体的,在建立lcd面板的数学模型时,lcd面板的几何形状可以简化为四边形平面,其发光特性可以近似看作朗伯体,即,其辐射强度与辐射角度成如下关系:

iθ=i0cosθ

lcd面板上显示的内容可以用环境光贴图来实现,其贴图内容如图2所示,是光场显示器的元素图像,贴图的分辨率应当与显示中显示器的分辨率相同。

在本实施例中,具体的,在建立透镜阵列的数学模型时,将透镜阵列分成多个完全相同的小透镜排列组合而成的,只需要对单个透镜进行建模,透镜的几何结构如图3所示,图中左侧为单个透镜的结构示意图,右侧为透镜阵列的排列示意图,透镜的表面可以分为三部分,分别为底面圆、圆柱侧面和部分球面,透镜的表面方程可以用以下方程组表示:

其中,r为面的半径,h为圆柱体的厚度,r圆柱和底面圆的半径。

当光线与透镜表面相交时,光线会发生折射和反射,其中透镜对光线的折射和反射可以用通过斯涅尔定律描述,如图3所示,当光线与透镜发生碰撞时,光线会分为折射和反射光两部分,投射光的方向可由下式表示:

其中,t为透射光矢量,i为入射光矢量,n为法线矢量。n1和n2分别为两种介质的折射率。

透镜表面的反射率可以用菲涅耳模型来计算,其表达式可由如下方程表示:

r=r0+(1-r0)(1-cosθ)5

其中r为反射率,n1和n2分别为两种介质的折射率。

具体的,在本实施例中,在建立全息功能屏(holographicfunctionalscreen,hfs)的数学模型时,全息功能屏是一种具有不同体散射的平面。如图4所示,全息功能屏的入射角不同,体散射角也不同。其体散射角度与入射角之间的关系可以由函数表示ω=f(θ),其中ω为空间散射角度,θ为入射角度。这里采用蒙特卡洛方法,经过hfs散射的光束可以看作小于ω角的多条不同角度光线的平均值。

在本实施例中,所述光场显示模型中,lcd面板、透镜阵列、全息功能屏依次排列,且满足:1/f=1/l+1/k,其中,f为透镜阵列中透镜的焦距,l为透镜阵列与全息功能屏的间距,k为透镜阵列与lcd面板的间距。

在计算机图形学中,通常采用针孔相机作为采集虚拟场景中图像的模型,在建立针孔相机模型时,需要对相机顶点位置、图像分辨率、图像与视点间的距离及相机坐标系矢量基进行设置,选取三维空间内任一点o作为针孔相机模型顶点,并设置针孔相机模型的图像分辨率、相机坐标矢量基,建立针孔相机模型,利用上述参数确定光场显示仿真图像中每个像素的光线起点和光线方向,利用逆向光线跟踪的方法对光场显示效果的仿真图像进行渲染。在本实施例中,所述步骤s2中,通过光场显示图像所在的矩形渲染平面及三维空间中的o点建立针孔相机模型,所述o点与渲染平面的四个顶点连接构成正四棱锥形的视锥体,通过针孔相机模型获取光线起点和光线方向。

在本实施例中,如图5所示,针孔相机顶点位于虚拟空间中的o点,光场显示仿真图像平面位于矩形面片abcd上,由这五个点连接而成的正四棱锥o-abcd即为针孔相机模型的几何形状,称之为视椎体。通过改变视椎体整体的形状、位置和方向,可以渲染得到虚拟空间中任意方向的图像。

在逆向光线跟踪中,针孔相机模型最大的作用就是为了得到某像素的跟踪光线的起点和方向,这条光线被称为“视线”(viewray),在本实施例中,所述步骤s2具体包括:

设置针孔相机模型的相关参数。

设置顶点o的位置,图像分辨率2a×2bpixels、相机坐标系单位矢量基u、v、w,图像平面与顶点o之间的距离distance,图像像素在虚拟空间中的长度l;

针孔相机模型参数应满足以下条件:

假设lcd与hfs面之间的距离为s,顶点o应在光场模型靠近hfs(远离lcd)一侧,点o与光场模型之间的距离(与hfs之间的距离)为8-10s;distance≈4s;2s<2al<8s且2s<2al<8s;矢量坐标基w应与hfs平面垂直。

根据像素点索引及预设公式得到光线起点和光线方向:

像素序号为二维数组的形式,从左下角到右上角按照从小到大排列,像素索引序号范围为为[0,0]~[2a,2b](a、b皆为非负整数,例如图像的左下角序号坐标为[0,0],右上角为[2a,2b],可以作为已知量)。渲染平面上某一像素点p,其像素序号为[x,y],代表排列在图像第y行、第x列的像素。根据预设公式可获取p像素视线的方向和起点。视线的起点为o点。

作为优选的,所述像素点的坐标预设公式为:

p=o+distance·w+(x+0.5-a)·l·u+(y+0.5-b)·l·v

像素点的视角方向预设公式为:

d=p-o=distance·w+(x+0.5-a)·l·u+(y+0.5-b)·l·v

在逆向光线跟踪技术中,所得图像的每个像素都具有一条视线,根据视线与虚拟物体碰撞的结果,可以计算出每个像素的颜色值。首先,需要得到视线的起点和方向,如图6所示,渲染平面即为渲染所得的图像,矩形渲染平面应该是虚拟面,光线从o点出发,经过虚拟面中的像素点并与场景中的物体相交,根据此原理进行光线跟踪,渲染平面中的每一个像素都具有各自的一条视线(viewray),视线的起点和方向由相机顶点和图像像素坐标确定。

在本实施例中,所述步骤s3中,通过调用光线跟踪函数,对每个像素点的颜色值分别独立计算,将光线的起点和方向作为光线跟踪的输入参数,获得每个像素点的颜色值。

在本实施例中,如图6所示,所述步骤s3具体包括:

s31、获取光线分别与全息功能屏、透镜阵列、lcd面板模型的交点,并得到最近交点;

s32、判断该交点是否为光源,若是则返回光源颜色值,若否则判断光线与模型相交时是否发生反射、折射,并递归调用新的光线跟踪函数,得到光线最终返回的颜色值;

s33、根据返回颜色值及反射率、折射率得到像素点的颜色值。

如图7和图8所示,此光线由虚拟相机的位置a和所求像素的位置b确定,即光线的起点和方向由a、b两点确定;然后,光线沿射线ab的方向前进,并与hfs、透镜阵列、lcd等模型相交,交点分别为c、d、e,相交时发生折射、反射、散射等现象;最后,将交点c、d、e所得的颜色值值以及对应的分光比求和,得到b点的颜色值。

在本实施例中,具体的,所述步骤s32具体包括:

若交点为光源,则返回光源颜色值c,光线跟踪结束;

若交点不为光源,则判断光线与模型是否发生反射,若否则返回颜色值c1=0,若是则生成反射光线,递归调用型的光线跟踪函数,反射光线返回颜色值c1;

进一步判断光线与模型是否折射,若否则返回颜色值c2=0,若是则生成折射光线,递归调用型的光线跟踪函数,折射光线返回颜色值c2。

在本实施例中,所述步骤s33中,若交点不为光源时,返回颜色值c=c1*反射率+c2*(1-折射率)。

综上所述,本申请提出一种基于光线跟踪的光场显示设备仿真方法,通过建立三维显示模型,使得在没有进行实验操作的前提下,可以实时得到光场显示的结果,可以让设计者对所设计的系统有直观的认识。依照现实中光场系统每个组件的大小尺寸、几何形状和光学特性建立数学模型,构建虚拟场景,利用逆向光线跟踪,渲染得到光场成像的结果。通过调整虚拟针孔相机模型的位置、更换光场显示的内容等方法,可以对光场成像系统的视角范围和景深等指标进行预测。采用逆向光线跟踪技术,并且采用多种包围盒加速结构,为了提高渲染效率,达到实时可交互的目的;对光场显示中所有的光学设备建立严格的数学模型;并采用蒙特卡洛方法,对渲染的每个像素进行多次采样,保证了仿真结果的准确性。

最后,本申请的方法仅为较佳的实施方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1