本发明属于立体投影的技术领域,尤其涉及一种曲面屏幕上移动视点的沉浸式立体渲染投影系统及其方法。
背景技术:
随着21世纪信息时代的来临和数字技术的成熟,虚拟现实技术与增强现实技术的飞速发展,文化娱乐业在近20年的不断探索中发生了巨大的变化。娱乐的内容方式手段载体都融入了新创意和高科技。于是,集成诸多当今最新技术的参与性娱乐设施在我国很多城市里的展览馆博览馆和科技馆等地方不断的涌现。作为虚拟现实技术与增强现实技术的基础,立体投影技术越来越成熟,其应用也越来越广泛,在能源开发、教育、娱乐、建筑视景与城市规划、虚拟医学/化学/生物工程等领域发挥着越来越重要的作用。
立体投影方式有很多,常见的有头戴式虚拟现实设备(如htcvive)、头戴式增强现实设备(如hololens),还有最让人熟知的投影仪与大屏幕式的立体投影(如电影院的3d电影投影系统,立体投影仪和立体眼镜的相互配合可以让用户享受到身临其境的立体观影体验)。其中,头戴式虚拟现实设备和头戴式增强现实设备因价格昂贵,并未广泛普及,目前广泛使用的立体投影方式还是以投影仪和大屏幕式的传统立体投影系统为主。人们非常享受立体电影这种观影形式,但是随着设备技术的不断进步,人们对观影要求的不断提高,单纯的传统立体投影技术已无法满足人们的需求,在不断探索的过程中也发现了传统立体投影技术的一些需要改进的地方:
第一,佩戴3d眼镜会限制观众的活动,而且观众长期观看电影会出现眼部疲劳等不适症状;现有的一些医学文献指出了观看3d立体电影可能给观众带来视觉诱发症等安全问题。长期观看立体电影可能导致视觉不适和疲劳,这是基于视差立体投影系统的通病。
第二,在使用传统立体投影系统时,观众无法与电影进行互动,存在感不强。存在感是一种幻觉,可概括为以下6种:现实式存在、沉浸式存在、媒体中社会角色式存在、社会丰富式存在、“我们在一起”式的信息交换存在和作为社会角色媒介式存在。换句话说,如果观众沉浸在影片内容中而不能区分虚拟与现实的界限,那么影片播放效果就是被最佳化了。通过对不同人观看3d电影后的体验的调查研究发现,人们承认电影非常真实震撼,但是他们无法参与到虚拟电影世界中,存在感不强。
针对第二点问题,是现有的传统立体投影系统使用户左右眼观看相同的图像引起的。在立体投影系统的原理是利用人左右眼视差的特性,让用户左右眼分别看到所投影的左右眼图像,然后大脑将左右眼图像融合成立体图像。现有技术中传统的立体投影系统,用户在不同的位置看到的是相同的左右眼图像;但是由于用户相对于屏幕位置的不同,左右眼图像所融合成的立体虚像会差生形状和位置的变化(相对于现实世界)。即,随着用户位置的改变,左右眼图像不变,但左右眼图像融合成的立体虚像的位置和形状在改变。造成上述情况发生的原因在于,传统的立体投影系统中,虚拟相机是从单一的角度去渲染场景。用户只有在舒适区域内才能观察到正确的虚像。偏离舒适区域,或在移动,用户的立体体验感就会大打折扣。因此,现有技术中的投影方式不能为用户提供舒适的在虚拟场景中的漫游及交互体验。
综上所述,如何解决现有的立体投影系统无法从用户观察的角度实时渲染场景图像,无法让用户通过移动从不同的角度观察场景/物体虚像从而产生此场景/物体真是存在于物理世界的错觉,用户体验感、存在感差的问题,尚缺乏有效的解决方案。
技术实现要素:
本发明为了解决上述问题,克服现有技术中立体投影系统无法从用户观察的角度实时渲染场景图像,无法让用户通过移动从不同的角度观察场景/物体虚像从而产生此场景/物体真是存在于物理世界的错觉,用户体验感、存在感差的问题,提供一种曲面屏幕上移动视点的沉浸式立体渲染投影系统及其方法,通过追踪用户眼睛位置,并依据用户与投影屏幕的相对位置关系和投影屏幕自身的形状信息实时对虚拟场景进行立体渲染并投影,以使得用户可以在所投影的虚拟场景中通过自身的走动进行自然的漫游,从不同位置和角度观察虚拟场景,消除了大屏幕立体成像只能在固定位置观看的弊端,从而大大提升用户的参与感,使用户可以真正融入到虚拟的世界,体验逼真震撼的3d立体效果。
为了实现上述目的,本发明采用如下一种技术方案:
一种曲面屏幕上移动视点的沉浸式立体渲染投影系统,该系统包括:
追踪模块,所述追踪模块被配置为追踪用户头部位置和姿态信息,估计用户双眼位置和视线方向的模块;
渲染模块,所述渲染模块被配置为根据用户双眼位置信息及曲面屏幕位置形状信息,设置立体相机对的参数,渲染完成后,对左右相机生成的图像根据屏幕的形状信息进行后处理的模块;
投影模块,所述投影模块被配置为将渲染模块渲染后的图像投影到曲面屏幕上的模块。
进一步的,所述追踪模块包括头部姿态采集装置、头部位置采集装置和双眼位置估计单元,
所述头部姿态采集装置采集用户头部姿态信息,并传输至所述双眼位置估计单元;
所述头部位置采集装置采集用户头部位置信息,并传输至所述双眼位置估计单元;
所述双眼位置估计单元根据接收的用户头部姿态信息和用户头部位置信息,对用户双眼相对于曲面屏幕的位置信息和用户双眼视线方向进行估计计算,并传输至所述渲染模块。
进一步的,所述投影模块包括立体相机对和曲面屏幕,经过所述渲染模块渲染后的立体相机对的投影图像贴于曲面屏幕上,建立投影图像空间与曲面屏幕空间的映射,完成投影。
为了实现上述目的,本发明采用如下另一种技术方案:
一种曲面屏幕上移动视点的沉浸式立体渲染投影方法,该方法基于一种曲面屏幕上移动视点的沉浸式立体渲染投影系统,该方法包括以下步骤:
(1)采集用户信息:追踪用户头部位置和姿态信息,估计用户双眼位置和视线方向;
(2)设置立体渲染参数:根据步骤(1)中估计的用户双眼位置和视线方向,实时调整立体相机对参数进行移动视点的立体渲染;
(3)动态视差调整:根据用户与屏幕的相对位置关系和投影屏幕的几何形状信息对渲染后的体视图像对的视差进行后处理,使用户在其位置看到舒适正确的立体图像;
(4)用户观感优化:分别针对用户头部姿态和眼球移动,对步骤(3)中动态视差调整后的图像进行进一步优化;
(5)投影立体场景,用户带立体眼镜观察漫游虚拟的立体场景。
进一步的,所述步骤(1)中,采用头部姿态采集装置采集用户头部姿态信息,并传输至所述双眼位置估计单元;采用头部位置采集装置采集用户头部位置信息,并传输至所述双眼位置估计单元;所述双眼位置估计单元根据接收的用户头部姿态信息和用户头部位置信息,对用户双眼相对于曲面屏幕的位置信息和用户双眼视线方向进行估计计算,并传输至所述渲染模块,进入步骤(2)。
进一步的,所述步骤(2)中,在实时调整立体相机对参数进行移动视点的立体渲染之前,建立会聚平面与投影平面的对应关系,所述会聚平面与投影平面的对应关系通过宽高比约束,且所述会聚平面与投影平面的长度的比值为k;
所述会聚平面为立体相机对中的左右两个相机的非对称视椎体相交的平面,所述会聚平面为矩形平面,所述会聚平面为预设平面,且位置与形状保持不变;
所述投影平面为与会聚平面相对应的用户观察到投影画面的一个矩形平面,对于曲面投影屏幕,所述投影平面为曲面投影屏幕上连接显像区域左右两端的假想矩形平面。
进一步的,所述步骤(2)中,所述立体相机对参数包括立体相机对位置和立体相机对的投影矩阵;
所述立体相机对位置为立体相机对相对于会聚平面的位置,根据用户双眼与投影平面的相对位置设置,立体相机对相对于会聚平面的位置的位移距离与用户双眼与投影平面的相对位置的位移距离比值为k;
所述立体相机对的投影矩阵根据所述会聚平面的几何信息和立体相机对位置信息实时计算,
其中,n为立体相机对坐标系中近切面,f为立体相机对坐标系中远切面,l、r、t、b分别为立体相机对视椎体近切面左、右、上、下四个边。
进一步的,所述步骤(3)中,设置动态视差调整后的图像i2(u2,v2)为输出图像,设置所述步骤(2)中渲染得到的图像i1(u1,v1)为输入图像;
所述动态视差调整的具体步骤为:
(3-1)对于输出图像i2(u2,v2)中的每一个像点,计算其对应的曲面屏幕上的三维坐标点s2(x2,y2,z2);
(3-2)计算s2(x2,y2,z2)所对应的平面屏幕的三维坐标点s1(x1,y1,z1);
(3-3)计算s1(x1,y1,z1)所对应的输入图像i1(u1,v1)中的像点,并将其填充至输出图像i2(u2,v2)中,得到:
(u2,v2)=mi←c(mc←p(mp←i(u1,v1)))(2)
其中,mp←i表示(u1,v1)到(s1,t1)的映射;mc←p表示(s1,t1)到(s2,t2)的映射;mi←c表示(s2,t2)到(u2,v2)的映射;(u1,v1)表示立体相机渲染的图像空间;(u2,v2)表示动态视差调整后的图像空间;(s1,t1)表示参数化后的平面屏幕空间;(s2,t2)表示参数化后的曲面屏幕空间。
进一步的,所述步骤(3-1)中,根据下列公式计算输出图像i2(u2,v2)中的每一个像点对应的曲面屏幕上的三维坐标点s2(x2,y2,z2):
其中,(u,v)表示图像空间,(x2,y2,z2)表示曲面屏幕上与(s2,t2)对应的三维坐标;表示曲面屏幕空间(s2,t2)与图像空间(u,v)表之间的映射关系;m2表示曲面屏幕空间(s2,t2)与曲面屏幕三维坐标点(x2,y2,z2)的映射关系,其可以通过对曲面屏幕进行参数化获得。
进一步的,所述步骤(3-2)中,根据下列公式计算s2(x2,y2,z2)所对应的平面屏幕的三维坐标点s1(x1,y1,z1):
其中,(x1,y1,z1)表示像点s1的空间坐标;(x2,y2,z2)表示像点s2的空间坐标;m表示左眼所对应的左相机的透视投影矩阵;t表示空间坐标系到左相机坐标系的转换关系。
进一步的,所述步骤(3-3)中,根据下列公式计算s1(x1,y1,z1)所对应的输入图像i1(u1,v1)中的像点:
其中,(x1,y1,z1)表示平面屏幕上与(s1,t1)对应的三维坐标;表示平面屏幕空间(s1,t1)与图像空间(u,v)之间的映射关系;m1表示平面屏幕空间(s1,t1)与平面屏幕三维坐标点(x1,y1,z1)的映射关系,其可以通过对平面屏幕进行参数化获得。
进一步的,所述步骤(4)中,针对用户头部姿态,对步骤(3)中动态视差调整后的图像进行进一步优化的具体步骤为:
采用惯性传感器检测头部姿态信息,对用户双眼位置的估计做进一步优化完善,优化估计公式为:
其中,e为平均瞳孔距;k为ab平面屏幕夹角的正切值;b为点o′到a″b″在z方向上的距离,另外点o′为根据头部位置和姿态估计的用户的视线兴趣点,即顺着用户视线方向,遇到的第一个虚拟物体上的坐标点;a″、b″为重新估计出左右眼的位置。
进一步的,所述步骤(4)中,针对用户眼球移动,对步骤(3)中动态视差调整后的图像进行进一步优化的具体步骤为:
检测用户的行为状态,当其处于平缓移动状态时,在头部位置检测系统中锁定其头部位置高度值y;当其脱离平缓移动状态进入下一状态时,释放其头部位置高度值y。
本发明的有益效果:
1.本发明的一种曲面屏幕上移动视点的沉浸式立体渲染投影系统及其方法,创造性的将移动视点的立体渲染及投影扩展到任意曲面屏幕上,任意曲面屏幕移动视点投影完美解决了平面屏幕移动视点投影中视角窄、零视差面明显等问题,大大提高了立体沉浸感,并使得移动视点立体投影的应用场景更为广泛;本发明对算法优化,可以实时渲染高分辨率的立体画面,而对机器不是有很高的要求,在保证基本的精确度和帧数的同时,又降低对整个系统的性能的要求,可以切实的应用到实际中。
2.本发明的一种曲面屏幕上移动视点的沉浸式立体渲染投影系统及其方法,针对用户视点与曲面屏幕复杂的相对关系而引起的立体虚像变形和位移等问题,提出了动态视差调整方法:根据曲面屏幕形状及用户与屏幕的相对位置,动态映射调整所投影虚拟场景的视差,即对立体渲染后的左右眼图像进行后处理,以保证用户在虚拟场景中走动时始终看到舒适正确的立体虚像。
3.本发明的一种曲面屏幕上移动视点的沉浸式立体渲染投影系统及其方法,采用三通道的大型弧幕立体投影技术,渲染的立体画面分辨率高,清晰逼真,视野覆盖大,沉浸感强,同时由于出色的出屏立体效果,真实感更强,相比与小型平面幕布,在立体,沉浸感等效果上具备优势;并通过跟踪用户头部姿态、总结眼球运动规律,成功解决了虚像的左右漂移和上下抖动问题,是得用户体验更为优异。
4.本发明的一种曲面屏幕上移动视点的沉浸式立体渲染投影系统及其方法,实现了用户可以从不同侧面观察虚拟立体物体的效果,改变了影院系统只能固定位置被动观看的弊端,真正实现了完全沉浸在虚拟场景的体验,为互动影院系统提供了新的思路;本发明具备良好的扩展性,可以与许多其他技术结合,提供更好的体验效果,并可以在娱乐,教育,训练,演示等领域中应用。
附图说明
图1为本发明的系统结构图;
图2为本发明的移动视点立体渲染及投影原理图;
图3为本发明的屏幕形状引起的视差变化示意图;
图4为本发明的视差分析调整示意图;
图5为本发明的用户头部姿态示意图;
图6为本发明的系统实际场景图;
图7为本发明的平面屏幕投影效果图;
图8为本发明的弧形屏幕投影效果图。
具体实施方式:
应该指出,以下详细说明都是例示性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面结合附图与实施例对本发明作进一步说明。
实施例1:
正如背景技术所介绍的,现有技术中存在立体投影系统无法从用户观察的角度实时渲染场景图像,无法让用户通过移动从不同的角度观察场景/物体虚像从而产生此场景/物体真是存在于物理世界的错觉,用户体验感、存在感差的问题,本实施例提供一种曲面屏幕上移动视点的沉浸式立体渲染投影系统,通过追踪用户眼睛位置,并依据用户与投影屏幕的相对位置关系和投影屏幕自身的形状信息实时对虚拟场景进行立体渲染并投影,以使得用户可以在所投影的虚拟场景中通过自身的走动进行自然的漫游,从不同位置和角度观察虚拟场景,消除了大屏幕立体成像只能在固定位置观看的弊端,从而大大提升用户的参与感,使用户可以真正融入到虚拟的世界,体验逼真震撼的3d立体效果。
为了实现上述目的,本发明采用如下技术方案:
一种曲面屏幕上移动视点的沉浸式立体渲染投影系统,如图1所示,该系统包括:
所述追踪模块包括头部姿态采集装置、头部位置采集装置和双眼位置估计单元;
所述头部姿态采集装置采集用户头部姿态信息,并传输至所述双眼位置估计单元;在本实施例中,头部姿态采集装置采用imu组件,imu组件固定在用户头部,并与头部观察方向保持一致,从而确保可以得到准确的头部姿态。
所述头部位置采集装置采集用户头部位置信息,并传输至所述双眼位置估计单元;在本实施例中,头部位置采集装置采用kinect摄像机来追踪用户头部相对屏幕的位置信息。需要预先对kinect摄像机标定,将kinect获取的基于其自身摄像机坐标系的位置数据转换到系统定义的世界坐标系中;该标定过程在环境搭建时离线完成,并存储在配置文件中,不需要在曲面屏幕上移动视点的沉浸式立体渲染投影系统运行时再次标定。
所述双眼位置估计单元根据接收的imu组件采集的用户头部姿态信息和kinect摄像机采集的用户头部位置信息,对用户双眼相对于曲面屏幕的位置信息和用户双眼视线方向进行估计计算,并传输至所述渲染模块。
所述投影模块包括立体相机对和曲面屏幕,经过所述渲染模块渲染后的立体相机对的投影图像贴于曲面屏幕上,建立投影图像空间与曲面屏幕空间的映射,完成投影。
在此系统中,使用了三台benqms30813d投影仪来组成投影阵列,每台投影仪的投影800*600120hz图像,最终拼接融合后可以完成2000*600120hz图像的投影。如图6所示,投影屏幕使用弧形屏幕,最大纵切面为高1.75m、长5.6m的矩形,此切面到弧顶的距离为0.85m。
实施例2:
正如背景技术所介绍的,现有技术中存在立体投影系统无法从用户观察的角度实时渲染场景图像,无法让用户通过移动从不同的角度观察场景/物体虚像从而产生此场景/物体真是存在于物理世界的错觉,用户体验感、存在感差的问题,本实施例提供一种曲面屏幕上移动视点的沉浸式立体渲染投影方法,通过追踪用户眼睛位置,并依据用户与投影屏幕的相对位置关系和投影屏幕自身的形状信息实时对虚拟场景进行立体渲染并投影,以使得用户可以在所投影的虚拟场景中通过自身的走动进行自然的漫游,从不同位置和角度观察虚拟场景,消除了大屏幕立体成像只能在固定位置观看的弊端,从而大大提升用户的参与感,使用户可以真正融入到虚拟的世界,体验逼真震撼的3d立体效果。
一种曲面屏幕上移动视点的沉浸式立体渲染投影方法,该方法基于实施例1中的一种曲面屏幕上移动视点的沉浸式立体渲染投影系统,该方法包括以下步骤:
在本实施例中,步骤(1)采集用户信息:追踪用户头部位置和姿态信息,估计用户双眼位置和视线方向;
所述步骤(1)中,采用头部姿态采集装置采集用户头部姿态信息,并传输至所述双眼位置估计单元;采用头部位置采集装置采集用户头部位置信息,并传输至所述双眼位置估计单元;所述双眼位置估计单元根据接收的用户头部姿态信息和用户头部位置信息,对用户双眼相对于曲面屏幕的位置信息和用户双眼视线方向进行估计计算,并传输至所述渲染模块,进入步骤(2)。
在本实施例中,步骤(2)设置立体渲染参数:根据步骤(1)中估计的用户双眼位置和视线方向,实时调整立体相机对参数进行移动视点的立体渲染;
所述步骤(2)中,所述会聚平面为立体相机对中的左右两个相机的非对称视椎体相交的平面,立体相机对的视椎体示意图,如图2(a)所示,左右两个相机的非对称视椎体相交于会聚平面,所述会聚平面在虚拟场景中为矩形平面,所述会聚平面为预设平面,且位置与形状保持不变;
所述投影平面为与会聚平面相对应的用户观察到投影画面的一个矩形平面,用户双眼的视椎体示意图,如图2(b)所示;若投影屏幕为平面的,投影平面为屏幕上的显像矩形区域;对于曲面投影屏幕,所述投影平面为曲面投影屏幕上连接显像区域左右两端的假想矩形平面。
在实时调整立体相机对参数进行移动视点的立体渲染之前,建立会聚平面与投影平面的对应关系,图2(a)中所述会聚平面的位置(距地面的高度)以及长宽比都是由真实世界图2(b)中投影平面决定的。投影平面的宽高比(可由测量得到),决定了会聚面的宽高比;会聚面在虚拟场景的中的位置,决定了用户可以看到的虚拟场景的区域。所述会聚平面与投影平面的对应关系通过宽高比约束,且所述会聚平面与投影平面的长度的比值为k;
所述步骤(2)中,所述立体相机对参数包括立体相机对位置和立体相机对的投影矩阵;
所述立体相机对的投影矩阵根据所述会聚平面的几何信息和立体相机对位置信息实时计算。与投影屏幕相对应,立体相机对的会聚平面(矩形平面)在虚拟场景坐标系中几何信息(即,四个顶点的坐标)是保持不变。令会聚平面四个顶点在虚拟场景坐标系的坐标为lu、ld、ru、rd,然后根据立体相机对的位置、朝向,将其转换到相机坐标系中,在根据和近切面n、远切面f,便可计算出立体相机对视椎体。令l、r、t、b分别为立体相机对视椎体近切面左、右、上、下四个边。所述立体相机对的投影矩阵如下:
在本实施例中,(3)动态视差调整:根据用户与屏幕的相对位置关系和投影屏幕的几何形状信息对渲染后的体视图像对的视差进行后处理,使用户在其位置看到舒适正确的立体图像;
与平面屏幕相比,曲面屏幕可以为用户提供更为广阔的视角和更为舒适体验感,同时曲面屏幕上的立体投影也更为复杂。一方面,面积较大的曲面屏幕需要多台投影仪协同工作来显示高分辨画面。另一方面,屏幕形状的会使用户双眼接受画面的视差发生变化,从而造成立体图像发生位移和形状的畸变,如图3(a)所示,立体相机对的视椎体示意图,由于受弧形屏幕的影响,如图3(b)所示,投影到弧形屏幕上的图像点s2l、s2r在用户眼中形成的虚像点p′与平面屏幕上图像s1l、s1r所形成的虚像点p发生了偏离。然而,图3(b)中虚像点p才是应该让用户看到的正确的像。
为了更好的分析校正由曲面屏幕引起的视差变化,在曲面屏幕之前定义一个虚拟的平面屏幕。曲面屏幕空间、平面屏幕空间与投影图像空间的映射关系如下:
其中:
(u,v)表示立体相机渲染的图像空间,同样也是投影图像空间;
(s2,t2)表示参数化后的曲面屏幕空间;
(x2,y2,z2)表示曲面屏幕上与(s2,t2)对应的三维坐标;
表示曲面屏幕空间(s2,t2)与图像空间(u,v)表之间的映射关系;
m2表示曲面屏幕空间(s2,t2)与曲面屏幕三维坐标点(x2,y2,z2)的映射关系,其可以通过对曲面屏幕进行参数化获得;
(s1,t1)表示参数化后的平面屏幕空间;
(x1,y1,z1)表示平面屏幕上与(s1,t1)对应的三维坐标;
表示平面屏幕空间(s1,t1)与图像空间(u,v)之间的映射关系;
m1表示平面屏幕空间(s1,t1)与平面屏幕三维坐标点(x1,y1,z1)的映射关系,其可以通过对平面屏幕进行参数化获得。
如图3(a)所示,立体相机对渲染的关于点p图像点sl、sr,以贴墙纸的映射方式到图3(b)、图4(a)中的平面屏幕上的s1l、s1r和曲面屏幕上的s2l、s2r。其投影效果如同将要投影的图像当作一张墙纸贴在曲面屏幕上一样。而曲面屏幕上的s2l、s2r在人眼中融合的虚像点p′,与平面屏幕上图像s1l、s1r所形成的虚像点p相比,位置发生了偏移。并且在用户移动的过程中,虚像点p′的位置会随着用户的位置改变而改变,而不像虚像点p始终保持空间位置不变。为了使曲面屏幕上的移动视点的立体渲染及投影效果和平面幕布上的投影效果一样,即保持虚像点p′始终与虚像点p重合,在此提出了一种动态调整立体相机对所渲染得到的立体图像的视差的方法。
如图4(b)所示,令i1(u1,v1)左相机渲染的图像,i2(u2,v2)为i1(u1,v1)经过动态视差调节后的结果图像。图中像点s1,为图像i1(u1,v1)投影到平面屏幕上点p所对应的像点;图中像点s2,为图像i2(u2,v2)投影到曲面屏幕上点p所对应的像点。那么动态视差调节后结果必须保持,像点s1、像点s2与人左眼的位置在同一条透视投影线上,已达到校正如图4(a)中像点s1l、像点s2l与人左眼位置间的位置偏差的效果。像点s1、像点s2之间满足透视投影关系,可以用以下公式描述:
(x1,y1,z1)表示像点s1的空间坐标;
(x2,y2,z2)表示像点s2的空间坐标;
m表示左眼所对应的左相机的透视投影矩阵;
t表示空间坐标系到左相机坐标系的转换关系。
动态视差是对立体相机对渲染所得图像的后处理过程。经过前面分析可知,立体相机对渲染得到的图像i1(u1,v1),直接投影到平面屏幕上便可达到移动视点的投影效果;而投影到曲面屏幕上便会引起虚像的位移和形变,需要对图像i1(u1,v1)进行视差调整的处理后再进行投影。
所述步骤(3)中,设置动态视差调整后的图像i2(u2,v2)为输出图像,设置所述步骤(2)中渲染得到的图像i1(u1,v1)为输入图像;
所述步骤(3-1)中,根据下列公式计算输出图像i2(u2,v2)中的每一个像点对应的曲面屏幕上的三维坐标点s2(x2,y2,z2):
所述步骤(3-2)中,根据下列公式计算s2(x2,y2,z2)所对应的平面屏幕的三维坐标点s1(x1,y1,z1):
(u2,v2)=mi←c(mc←p(mp←i(u1,v1)))(9)
所述步骤(3-3)中,根据下列公式计算s1(x1,y1,z1)所对应的输入图像i1(u1,v1)中的像点:
在本实施例中,(4)用户观感优化:分别针对用户头部姿态和眼球移动,对步骤(3)中动态视差调整后的图像进行进一步优化;
所述步骤(4)中,针对用户头部姿态,在移动视点的投影系统中,需要追踪用户双眼的位置,以设置渲染系统中左右相机的位置。然而在通常的追踪时,并不是直接追踪双眼的位置,而是追踪头部位置,以头部位置估计双眼的中心位置坐标,再依据平均瞳孔距来估计左右眼的位置坐标。这种估计双眼位置的方式并没有考虑到头部姿态造成的影响。始终保证当用户正面面向屏幕时,接受的虚像不会受到影响。然而,用户在移动观察投影的虚像时,因为他的视线焦点在其观察的虚像上便常会出现侧对屏幕的情况;这会对左右图像在用户双眼中形成的虚像的位置和形状产生些许影响。
如图5(a)所示,令a、b为左右眼的实际位置,p为以头部位置估计的双眼的中心位置,e为平均瞳孔距。则a′、b′为以p为中心,e为长度,估计出的左右眼的位置;i1、i2为与a′、b′相对应的左右相机渲染的关于点o′的像点。而i1、i2在用户眼中所成的虚像点却为点o,而不是我们所希望的点o′。这种情况存在,会让用户移动过程中观察立体虚像时,觉察到虚像并不是固定在空间某一位置,而是在左右漂移,此外用户也能观察到虚像些许的扭曲变形。
对步骤(3)中动态视差调整后的图像进行进一步优化的具体步骤为:
经过本发明试验证明,使用用户头部姿态校正双眼位置估计之后,用户在移动观察立体虚像时虚像的左右漂移感大大降低。
通过之后用户比对测试和分析,结果显示在此方案的优化下,用户基本感觉不到之前的上下抖动感,身临其境的真实感与沉浸感大大加强。
在本实施例中,(5)投影立体场景,用户带立体眼镜观察漫游虚拟的立体场景。
所述步骤(5)中,经过步骤(1)-步骤(4)的立体相机对的投影图像贴于曲面屏幕上,建立投影图像空间与曲面屏幕空间的映射,完成投影。
在本实施例中,采用三通道的大型弧幕立体投影技术,渲染的立体画面分辨率高,清晰逼真,视野覆盖大,沉浸感强,同时由于出色的出屏立体效果,真实感更强,相比与小型平面幕布,在立体,沉浸感等效果上具备优势。并通过跟踪用户头部姿态、总结眼球运动规律,成功解决了虚像的左右漂移和上下抖动问题,是得用户体验更为优异。
图7,图8分别展示了平面屏幕投影效果图和弧形屏幕投影效果图;图7左图和图8左图为用户在左边看到的场景,图7右图和图8右图为用户在右边看到的场景。前面的立方体在立体投影中为出屏的投影效果,仿佛就悬浮在用户面前,在用户测试时有许多用户都曾尝试用手去触摸它。通过对平面屏幕移动视点立体渲染及投影和弧形屏幕移动视点的立体渲染及投影的对比测试分析,结果显示,弧形屏幕的立体效果更好,虚像偏移感和抖动感更小,真实感和沉浸感更强烈,更加受用户的喜爱。而且由于弧形屏幕的视角更广阔,用户可以活动的范围比平面屏幕更大,因此用户可以在虚拟场景中做更为自由的探索。
另外,在平面幕布上左右眼图像的零视差面与投影平面(即,平面屏幕)重合,在用户观察时更容易注意到零视差面的存在,从而使沉浸感降低;然而,在本文的移动视点的弧形屏幕立体投影中,零视差面是投影平面(弧形屏幕面)之前的一个矩形截面,与物理的弧形屏幕并不重合,从而使得用户难以觉察到其存在从而使得沉浸感大大加强。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。