公开/公告号CN101055494A
专利类型发明专利
公开/公告日2007-10-17
原文格式PDF
申请/专利权人 上海虚拟谷数码科技有限公司;
申请/专利号CN200610025674.2
发明设计人 姜忠鼎;
申请日2006-04-13
分类号G06F3/00(20060101);
代理机构31100 上海专利商标事务所有限公司;
代理人章蔚强
地址 200086 上海市大连路1079号和平商厦2004室
入库时间 2023-12-17 19:16:00
法律状态公告日
法律状态信息
法律状态
2020-03-31
未缴年费专利权终止 IPC(主分类):G06F3/00 授权公告日:20110316 终止日期:20190413 申请日:20060413
专利权的终止
2011-03-16
授权
授权
2009-09-30
实质审查的生效
实质审查的生效
2007-10-17
公开
公开
技术领域
本发明涉及一种虚拟场景漫游方法及其系统,具体说是一种基于空间索引立方体全景视频的虚拟场景漫游方法及其系统。
背景技术
虚拟场景漫游系统通常采用三维几何及其纹理信息来描述场景中的物体,利用类似视频游戏中的算法对场景进行实时绘制。这类系统需要大量繁琐的人工交互来完成三维模型的几何简化和纹理优化,以达到减少数据量,实现实时绘制的目的。简化表示牺牲了模型的精确性,从而降低了绘制图像的质量。另外,当前的个人计算机(PC)和三维图形卡的处理能力仍有限,高质量的真实感图形生成技术,如光线跟踪、辐射度等,仍无法应用于虚拟场景漫游系统。因此构建高质量的虚拟场景漫游系统仍非常困难。
与上述基于显示几何表示的绘制系统不同,基于图像的绘制系统(Image-Based Rendering Systems)以预先采集的图像序列作为输入。IBR系统利用输入的采样图像序列对全光函数进行重建。通过对重建的全光函数进行重新采样生成新视点位置的图像。与本发明最接近的工作是FX Palo Alto实验室的FlyAbout系统(FlyAbout:Spatially Indexed Panoramic Video.In Proceedings ofACM Multimedia 2001)。FlyAbout系统是一种基于图像的绘制系统,它以真实场景中获取的空间索引柱面全景视频为输入。全景视频的空间索引信息,即全景视频采集时相机的三维空间位置和朝向等信息,是通过后期图像处理技术和全球定位系统(GPS)获得。由于相机设计的局限性,该系统只处理柱面全景视频。柱面全景视频不能覆盖用户垂直可视区域的全部,通常会遗漏天空和地面位置处的景物。然而,在实际的漫游系统中,用户通常要求观看这些被遗漏的景物。更糟糕的是,利用现有全球定位系统(GPS)和图像后处理算法所获得的空间索引信息的精度不能保证在可控的误差范围之内。因此,利用该系统对真实场景进行绘制时经常会出现画面抖动现象。系统采用MOTION JPEG(MJPEG)对柱面全景图序列进行压缩编码,然而现有三维图形卡并不支持该压缩算法。因此系统首先对全景视频进行解压缩,然后用CPU对解码的图像进行变换操作完成场景绘制。只利用CPU而没有充分利用三维图像卡的计算能力极大地限制了图像的绘制速度。
发明内容
本发明的目的在于提供一种基于空间索引立方体全景视频的虚拟场景漫游方法及其系统,从而达到虚拟场景高质量漫游。
本发明所提供的一种基于空间索引立方体全景视频的虚拟场景漫游方法,包括下列步骤:
(一)空间索引立方体全景视频获取
首先指定用户在虚拟场景中可游览的一条路径,并利用现有三维软件工具,在路径采样点位置采用立方体环境映照绘制全景图像;
立方体环境映照序列则构成了立方体全景视频,并利用三维软件工具提供的脚本语言进行编程来获取每幅全景图所对应的空间索引信息;
由立方体全景视频和相应的空间索引信息获得空间索引立方体全景视频;
(二)空间索引立方体全景视频压缩与绘制
首先对单独的立方体全景图进行压缩,压缩的立方体全景图序列形成压缩的立方体全景视频;
将压缩的视频数据和空间索引信息合并形成压缩的空间索引立方体全景视频;
绘制时首先根据用户当前的视点位置和视线方向计算所需的立方体全景视频数据;
然后读取所需数据并将它作为纹理映射到虚拟立方体表面;
通过三维图形编程接口,利用图形硬件对该立方体进行绘制;
通过改变视线方向,用户可观看立方体环境映照所对应空间位置处的所有景物;
通过改变视点位置来更新环境映照实现虚拟漫游;
(三)形成漫游系统
首先指定用户在虚拟场景中可游览的N条路径,且指定的路径彼此衔接构成漫游地图;
用户沿场景地图中规定的路径漫游;
若达到路径端点且遇到交叉路口,系统可自动选取与用户视角方向夹角最小的路径为新路径;
同时,用户可沿某条路经向前、向后、向左和向右观看,还可向上和向下观看。
本发明还提供了一种基于空间索引立方体全景视频的虚拟场景漫游系统,其特征在于:包括运动控制引擎单元、分别与该运动控制引擎单元相连的全景视频绘制单元、声音绘制单元、地图绘制单元和文本显示单元,其中:
运动控制引擎单元还连接外部输入设备,接收外部输入的空间索引立方体全景视频信号、漫游路径相应的声音文件、控制地图和文本信息,用于用户视点参数的交互控制;
全景视频绘制单元,用于根据目标视点空间位置对压缩全景视频数据进行读取、可见面判断,并利用图形硬件进行目标视点绘制;
声音绘制单元,用于生成和播放与用户视点和景物所在三维空间位置相关的声音;
地图绘制单元,用于显示用户视点空间位置,并提供用户动态选择路径的功能;
文本显示单元,用于对漫游路径及画面景物相关的附加文字信息进行显示。
由于采用了上述的技术解决方案,本发明为基于图像的绘制系统来提高绘制图像的质量,利用现有三维工具对虚拟场景进行精细建模,预先绘制所需的高质量图像序列。与已有基于图像绘制系统相比(如FlyAbout),本发明以空间索引立方体全景视频为输入,利用三维图形卡支持的压缩方法对全景视频数据进行压缩和提高绘制速度,用户可利用游戏手柄、鼠标和键盘等外部设备方便灵活地与系统进行交互,获得高质量漫游体验。本发明可快速、灵活地构造普通PC平台上虚拟场景的高质量漫游系统,比传统面向三维几何和纹理表示的漫游系统提供更好的图像质量,同时省去了大量繁琐的模型优化工作。利用图形卡进行全景视频的压缩和绘制提高了系统绘制速度。
附图说明
图1是本发明系统结构示意图。
具体实施方式
本发明,即一种基于空间索引立方体全景视频的虚拟场景漫游方法,包括下列步骤:
(一)空间索引立方体全景视频获取
首先指定用户在虚拟场景中可游览的一条路径,并利用现有三维软件工具,如3DS Max、Maya等,为克服柱面全景图限制了用户垂直视域这一缺点,在路径采样点位置采用立方体环境映照绘制全景图像。立方体环境映照以立方体的六个表面记录入射到立方体中心点的所有光线。
立方体环境映照序列则构成了立方体全景视频,并利用三维软件工具提供的脚本语言进行编程来获取每幅全景图所对应的空间索引信息,与已有的通过图像后处理技术和GPS获取的空间索引信息相比,本方法可获取准确的空间索引信息。因此画面绘制时不会出现抖动现象。
由立方体全景视频和相应的空间索引信息获得空间索引立方体全景视频;
(二)空间索引立方体全景视频压缩与绘制
已有基于图像绘制系统一般采用MJPEG对柱面全景图序列进行压缩编码,然而现有三维图形卡并不支持该压缩算法。场景绘制时必须首先对全景视频进行解压缩,然后用CPU对解码的图像进行变换操作。只利用CPU而没有充分利用三维图像卡的计算能力极大地限制了图像的绘制速度。为提高绘制速度,本发明采用三维图形卡支持的压缩方法对立方体全景视频进行压缩。由于DXT1压缩方法可提供很好的压缩比而且得到大部分硬件的支持,采用它对单独的立方体全景图进行压缩。压缩的立方体全景图序列形成压缩的立方体全景视频;
将压缩的视频数据和空间索引信息合并形成压缩的空间索引立方体全景视频;
绘制时首先根据用户当前的视点位置和视线方向计算所需的立方体全景视频数据;
然后读取所需数据并将它作为纹理映射到虚拟立方体表面;
通过三维图形编程接口,,如OpenGL或DirectX,利用图形硬件对该立方体进行绘制;
通过改变视线方向,用户可观看立方体环境映照所对应空间位置处的所有景物;
通过改变视点位置来更新环境映照实现虚拟漫游;
(三)形成漫游系统
本发明系统以空间索引代替传统的时间索引来表示全景视频。
首先指定用户在虚拟场景中可游览的N条路径,且指定的路径彼此衔接构成漫游地图,用户沿场景地图中规定的路径漫游;
与已有系统相比,本系统的运动控制引擎不仅允许用户沿某条路经向前、向后、向左和向右观看,还允许向上和向下观看。若达到路径端点且遇到交叉路口,系统可自动选取与用户视角方向夹角最小的路径为新路径,从而省去用户不必要的人工交互。系统也允许用户交互选择感兴趣的分支路径。
用户通过游戏手柄、键盘和鼠标等外部设备与系统进行交互。游戏手柄上的旋转按钮映射为用户向左和向右的旋转动作。手柄上另四个独立按钮分别控制用户向前、向后、向上和向下运动方式。Speed按钮控制用户运动的速度和加速度。键盘接口实现游戏手柄的全部功能。鼠标用来控制用户的旋转动作。
完整的系统输入包括压缩的空间索引立方体全景视频、漫游路径相应的声音文件、文本说明和控制地图等信息。这些不同类型的数据分别由相应的模块单独绘制。
如图1所示,本发明一种基于空间索引立方体全景视频的虚拟场景漫游系统,包括运动控制引擎单元1、分别与该运动控制引擎单元1相连的全景视频绘制单元2、声音绘制单元3、地图绘制单元4和文本显示单元5,其中:
运动控制引擎单元还连接外部输入设备,接收外部输入的空间索引立方体全景视频信号、漫游路径相应的声音文件、控制地图和文本信息,用于用户视点参数的交互控制;
全景视频绘制单元,用于根据目标视点空间位置对压缩全景视频数据进行读取、可见面判断,并利用图形硬件进行目标视点绘制;
声音绘制单元,用于生成和播放与用户视点和景物所在三维空间位置相关的声音;
地图绘制单元,用于显示用户视点空间位置,并提供用户动态选择路径的功能;
文本显示单元,用于对漫游路径及画面景物相关的附加文字信息进行显示。
以某一漫游系统为例,介绍系统实施步骤。
(1)空间索引立方体全景视频获取
1.1控制地图制作
首先指定用户在虚拟场景中的可漫游路径。漫游路径彼此连接构成系统的控制地图。
1.2单条路径空间索引立方体全景视频生成
在虚拟场景中创建六台虚拟相机。要求每台相机的视域为90度,彼此空间夹角也为90度。该虚拟相机组可获取入射到采样点处的所有虚拟光线。将虚拟相机组绑定到指定漫游路径。利用3ds max依次绘制每台虚拟相机所看到的虚拟场景的图像序列。分别从六个图像序列取出序号相同的六幅图像。该六幅图像就构成了一个立方体环境映照。由立方体环境映照序列构成了指定路径的立方体全景视频。
在3ds max中执行如下脚本获取全景视频的空间索引信息:
fn=createfile″d:\spatialinfo.txt″
format″Name frame transform fov position rotation dir ″to:fn
fort=0 to n do
(
slidertime=t
format″%%%%%%% ″″Camera04″t $Camera.transform$Camera.fov
$Camera.pos $Camera.rotation $Camera.dir to:fn
)
close fn
1.3重复1.2步骤,生成所有指定路径的空间索引立方体全景视频。
(2)用DXT1压缩方法对单独的立方体全景图进行压缩。压缩的立方体全景图序列构成压缩的立方体全景视频。将压缩的视频数据和空间索引信息合并构成压缩的空间索引立方体全景视频。
(3)根据空间索引信息配置相应的多媒体素材,如声音、文本等信息。制作系统启动画面。根据以上信息生成系统配置文件。
(4)插上游戏手柄,启动系统。
以上实施例仅供说明本实用新型之用,而非对本实用新型的限制,有关技术领域的技术人员,在不脱离本实用新型的精神和范围的情况下,还可以作出各种变换或变型,因此所有等同的技术方案也应该属于本实用新型的范畴之内,应由各权利要求限定。而纳入权利要求的范围之内。
机译: 用于提供空间索引全景视频的系统和方法
机译: 用于提供空间索引全景视频的系统和方法
机译: 用于基于虚拟场景的虚拟实体描述帧从不同有利位置渲染虚拟场景的帧的方法和系统