引入实拍全景的虚拟现实系统
2019-12-26徐欣
徐 欣
上海电气集团股份有限公司 中央研究院 上海 200070
1 研究背景
计算机图形技术、传感技术和仿真技术的不断发展,推动虚拟现实技术不断进步,应用领域不断拓宽,应用层级不断提升。与此同时,用户对虚拟现实系统建模逼真度的要求越来越高,对虚拟系统与现实世界的关联交互需求也越来越大[1]。
目前,一般的虚拟现实系统利用计算机进行数字建模,生成一种模拟环境。使用者在特定范围内,借助计算机和头部显示等设备沉浸于虚拟环境中,进行身临其境的体验与交互,满足特定需求[2-3]。在现有三维建模图形渲染技术及计算机硬件条件下,通过数字建模来呈现每一个物理对象,建设周期与成本是需要评估的一个重要指标,尤其是对于大型复杂场景而言,更是一个不小的挑战。
实拍全景指用相机进行360°取景拍摄,通过计算机拼接形成一个球形实景空间,给用户以全方位观看体验,可以达到一般虚拟现实系统所具有的沉浸体验效果,并具有画质逼真、还原实景、开发周期短、成本低、数据量较小等优点。实拍全景的不足之处是观察者只能在拍摄相机所在位置感受现实场景,并且无法进行交互操作[4-5]。
由以上介绍可见,若能兼顾实拍全景技术和传统虚拟现实技术的优点,将实拍全景引入虚拟现实系统,用户就不仅能在全景中体验三维实景效果,而且能随时进入虚拟场景进行互动操作,同时大幅缩减原本需要虚拟建模的工作周期和数据量。
目前,国内外对于实拍全景与虚拟现实相融合的研究还较少,多数文献只是针对各自优点和存在的问题进行研究。Gaddam等[6]提出对全景图不同部分提供不同的图像质量,由此提高全景影像传输的效率。Hilfert等[7]提出一种简化和部分自动化重用的建筑数字建模方法,降低高沉浸虚拟现实中工程和建筑的搭建成本。潘飞等[8]将虚拟现实及实拍全景技术应用于高校全景漫游与导航、科研成果展示等方面。Tian Jun等[9]将虚拟漫游技术应用于博物馆,使游客可以远程游览馆内文物。
笔者以某磨煤机车间为对象,建立磨煤机车间三维虚拟现实系统,并在该系统中建立一个球面荧幕,将磨煤机的实拍全景真实画面映射至球幕内表面,从而构建出引入实拍全景的磨煤机车间虚拟现实系统。应用这一虚拟现实系统,使用者可以自由沉浸并穿梭于磨煤机车间三维实景和虚拟环境之间,实现实拍全景体验和虚拟场景交互的多种功能。
2 系统模型构建
实拍全景如图1所示,虚拟现实如图2所示,两者虽然都能使体验者拥有沉浸效果,但是在原理上有诸多区别。在画面方面,实拍全景是实景拍摄,画面真实,但存在一定变形,而虚拟现实则是虚拟建模渲染。在体验的时间轴与空间轴方面,实拍全景沿设置的时间轴、空间轴播放影像,虚拟现实则是无时间概念地进行个性化空间漫游。在互动性方面,实拍全景是被动观看,虚拟现实则不仅可以沉浸式观看,而且能够进行主动交互操作。
图1 实拍全景
图2 虚拟现实
2.1 虚拟现实系统
基于三维虚拟建模的虚拟现实系统开发流程包括方案策划、数据准备、三维建模、材质贴图、动画制作、渲染烘焙、程序开发和测试发布。方案策划指明确所要表达的技术内容和呈现方式,包含呈现对象全过程各环节的详细脚本。数据准备指收集、整理和确认系统所需各类数据的完整状态。三维建模指通过三维建模软件,建立虚拟现实系统所需的全部体验对象。材质贴图指对模型赋予颜色、透明度、反光强度、自发光及粗糙度等生动的表面特性。动画制作指根据脚本动作设计要求,制作虚拟现实所需的动画片段。渲染烘焙指根据所需设置的场景,赋予物体材质、贴图和灯光等属性,由程序绘制一幅完整的画面。程序开发指针对需要完成的交互功能,应用软件开发工具来完成系统的工作流程、操作逻辑和特效生成。测试发布指对制作完成的虚拟现实系统程序进行桌面测试和头显设备最终发布。
2.2 实拍全景系统
通常实拍全景影像基于多个镜头拍摄的具有重叠部分的一系列影片,通过相应的拼接策略,拼接为一张完整的全景图,常用的方法是通过匹配图像重叠区域的特征点来实现无缝拼接。全景影像的球幕投影指将拼接好的全景图投射至球体表面。如图3所示,球面上的Q点与全景影像上的q点是一一对应的映射关系[10]。全景影像的尺寸为LH,其中L为长度,H为高度。q点的坐标为(x,y),Q点对应的球面极坐标为(φQ,θQ,RQ),则全景图坐标(x,y)与极坐标(φQ,θQ,RQ)之间的关系为:
(1)
式中:R为球体半径;a和b分别为平面展开图投影至球体表面时长度和高度方向上的拉伸因数。
图3 全景图球幕投影映射关系
a和b由全景展开图尺寸和球体的大小确定,令全景展开图的长高比为2∶1,则a=b。
(2)
在构建球面实拍全景时,对于全景展开图上的任意一点(x,y),其对应的极坐标(φQ,θQ,RQ)中RQ固定,RQ为所建立的球体半径。由式(1)和式(2)可以建立球面全景展开图坐标(x,y)与球面实拍实景极坐标(φQ,θQ,RQ)之间的映射关系。
2.3 引入实拍全景的虚拟现实系统
在搭建好的虚拟现实系统环境中,通过创建Media Player类文件来导入相应的实拍全景影像,再将此文件制作为材质贴图文件,通过程序控制转换为标准动态材质。在虚拟现实环境中建立一个球壳三维模型,将全景动态材质赋予球体内表面,由此完成引入实拍全景的虚拟现实系统构建。使用者可以在这一虚拟现实系统中进行沉浸式漫游,自由体验全景影像,并进行虚拟交互。引入实拍全景的虚拟现实系统如图4所示。
图4 引入实拍全景的虚拟现实系统
为了更好地构建引入实拍全景的虚拟现实系统,需要通过编程实现特定功能。第一,若使用者一开始就位于全景球区域内或从外部进入,则播放器自动处于显示状态,全景视频开始播放,并可循环播放。第二,若使用者离开全景球区域,则播放器自动隐藏,不影响用户进行虚拟现实系统的其它体验。第三,使用者可以通过导航功能,实现在全景球区域和虚拟环境之间的快速位置切换。
3 应用验证
基于磨煤机车间,对引入实拍全景的虚拟现实系统进行应用验证。通过应用验证,一方面可以满足实际装备产品虚拟展示和装配教学等工业需求,另一方面可以优化理论方法的不足之处,为后续将全景直播引入虚拟现实系统进行高效远程培训与维修维护打好基础。
3.1 磨煤机车间虚拟现实系统构建
选用UNREAL ENGINE 4软件作为开发引擎,建立磨煤机车间虚拟现实环境,构建流程如图5所示。根据虚拟呈现方案,建立磨煤机三维模型,通过美术处理完成零部件的材质贴图。为了不使实拍全景与虚拟现实切换过程中两者画面逼真度产生较大反差,材质贴图等美工质量要求较高。通过动画制作,完成原煤在磨煤机中颗粒度从大到小的碾磨筛选过程及磨煤机零部件的装配流程。通过程序开发,实现用户在虚拟现实环境中的方向、装配、选择和开关控制。
图5 磨煤机车间虚拟现实系统构建流程
3.2 实拍全景球幕制作
采用一体式全景相机进行磨煤机车间的现场拍摄,如图6所示。通过图像拼接得到实际磨煤机生产车间实拍全景视频,并且可以在Media Player软件中进行预览。
图6 磨煤机车间全景相机拍摄
在UNREAL ENGINE 4中创建材质文件,并生成Media Player类文件对应的动态贴图,再通过程序来制作材质,将实拍全景视频转换为标准的UNREAL ENGINE 4材质文件。在UUNREAL ENGINE 4中建立一个尺寸能够容纳磨煤机车间的三维球壳,基于转换得到的标准UNREAL ENGINE 4材质文件,按式(1)和式(2)所得全景展开图与球体表面坐标对应关系对三维球壳赋值,得到播放实拍全景视频的球幕。
创建Media Sound子文件,选择Media Player软件作为声来源,通过程序控制声频的来源位置,创建基于不同位置的环绕立体声,增强体验感。
完成上述工作后,得到引入实拍全景的磨煤机车间虚拟现实系统。基于Steam VR平台和HTC VIVE体验设备,可以在磨煤机车间虚拟现实系统中实现体验与交互,如图7所示。
图7 虚拟现实系统体验与交互
3.3 应用效果
引入实拍全景的磨煤机车间虚拟现实系统有三大功能。第一,沉浸展示了磨煤机的内外部结构及工作原理,行星齿轮箱总成、磨碗磨辊组件、分离器组件等可较好地向用户展示,提高营销宣展效率。第二,基于虚拟现实数据,可以在虚拟环境中提前进行静态分离器改造为动态分离器的拆装过程规划,降低实际工作过程中的不确定性,提高工作效率和安全性。第三,通过将实拍全景数据引入虚拟现实系统,可以进行远程监控、培训和运行维护等工作,具体包括弹簧加载力异常监测、分离器皮带打滑报警及机体结构振动分析等,方便后续确定磨煤机的运行维护及改造升级工作安排。
4 结束语
笔者将实拍全景引入虚拟现实系统,通过坐标对应关系将实拍全景视频映射至虚拟现实系统中的球幕上,有效结合实拍全景画质真实和虚拟现实可交互的优点。应用引入实拍全景的虚拟现实系统,可以对产品进行沉浸式展示、远程培训教学和运行维护等,拓宽了虚拟现实技术的应用范围,并为后续实现引入全景直播的虚拟现实系统打下了基础。