VrtoolBox QTVR制作.docx
《VrtoolBox QTVR制作.docx》由会员分享,可在线阅读,更多相关《VrtoolBox QTVR制作.docx(25页珍藏版)》请在冰点文库上搜索。
VrtoolBoxQTVR制作
VrtoolBox--PC上制作QTVR虚拟现实
(一)
一提起VR(VirtualReality虚拟现实)这个词,人们马上就会联想到工作站组、数字手套、数字头盔等一大堆硬件和极为昂贵的价格,正是由于这个原因使得VR技术通常只应用于一些专业需求极大、投入极多的领域,如飞行训练、医学内窥镜手术模拟等。
然而,Apple公司推出的QuickTimeVR规范却使VR技术极大地大众化了,它使得广大MAC机和PC用户在普通硬件环境下,也能领略VR技术的风采,虽然这与需大量昂贵硬件支持下的VR还有不少的区别,但毕竟这使VR技术走近了普通个人微机用户,而且其质量已经满足了许多需要VR技术的项目的要求,达到了相应的实用水平。
但是,如同Windows下QuickTime是从MAC机移植过来的原因一样,Windows用户只有直接应用已经在MAC机上制作好的VR影视的份,而不能享受自己制作VR影视的乐趣。
虽然近年来也出现了一些Windows下的QuickTimeVR制作系统,但其功能简单,达不到专业水准,通常也只能应用于一些要求不高的场合。
美国的VRToolBox公司推出的QuickTimeVR制作系统—VRToolBox彻底打破了在Windows下无专业VR制作系统的状况,使得PC机上的Windows用户也可按自己项目的需要来制作具有专业水平的QuickTimeVR影视,这不仅使VR的开发更贴近实际需求,而且使开发成本大大降低,提高了开发效率。
VRToolBox是一个开发QuickTimeVR影视的系列软件,其中包括三个独立的制作系统;VRObjectWorx、VRPanoworx和VRSceneworx,这三者可独立地使用;另有一个概括这三个模块的集成环境TheVRWorx,它使用户可在同一环境下同时使用三个模块,使开发工作更为方便。
根据我们的开发需求和开发实际效果来看,VRToolBox制作的QuickTimeVR影视具有很高的图像质量和VR应有的各项功能,其系统界面简单明了,开发制作过程也非常方便快捷,是PC机上Windows平台上的一个高效VR开发工具。
下面我们将详细介绍VRToolBox中各系统的使用方法、开发过程及相关经验。
在大家用VRToolBox尝试开发VR影视之前,应在系统中安装QuickTime3.0或以上版本(目前是QuickTime4.12版)。
影视
(二)
——介绍VR制作系统VRToolBox
第二军医大学医学教育技术中心
张力
一、 VRObjectWorx的开发环境及使用方法
VRObjectWorx是VRToolBox系列软件中用于开发QuickTimeVR对象影视的制作系统。
QuickTimeVR对象影视是QuickTime影视中的一种特殊格式,它展示了对某个单一对象的多面观察效果,用户可以通过键盘命令或在展示窗中用鼠标拖动这个对象,从而发生交互,可以获得从不同角度观察这一对象的效果,并且可对其进行缩放。
一个典型的对象影视就是一个被展示的物体“拿”在你手中,可从任意一个三维空间的角度去观察它。
为了建立这样的对象影视,首先要将这个物体放在一个非常容易控制的转盘中央,从而来获取有关这个物体的所有图像。
由于观察的方式不同,对象影视可分为单观察带对象和多观察带对象。
单观察带对象是从单个试点出发来观察物体,物体可作360°旋转。
这种方式的物体图像可通过数字摄像机或数字照相机拍摄获得,拍摄时将照相机对准物体并固定好,然后每拍一张照片,就将放置物体的转盘旋转一定的角度(例如10°),这样直到拍完旋转360°的所有照片。
传统使用胶卷的照相机也可用于拍摄物体,只是还需要洗印照片并进行图像扫描。
多观察带对象是指用户可在对象影视中以任意角度来观察对象,通常获取多观察带对象的图像方式是将拍摄设备置于物体上方并对准物体,然后每拍摄一张照片后,将放置物体的转盘旋转一定角度,直至360°的照片都拍完;再将拍摄设备在垂直方向沿一个弧度向下倾斜10°,同时保持与被拍摄物体中心的距离不变并对准物体,再拍摄物体旋转360°的照片;如此从垂直方向90°到-10°需拍11个观察带的图像。
为了获取精确的图像,拍摄时通常需要借助于悬挂固定等机械设备。
由此可见多观察带对象的图像获取比单观察带对象要复杂的多。
在此节内容中我们将以制作单观察带对象影视为例进行阐述。
VRObjectWorx的系统界面如图1-1所示,它包含五个模块,是按五个开发步骤来安排的,相互间具有递进依赖关系,即前面的步骤未完成时,后面的步骤则无法进行。
这样的界面安排使用户可以非常容易地安正确顺序进行开发工作。
图1-1
1. 进行全局设置
启动VRObjectWorx之后系统自动进入Setup模块,见图1-1。
在Setup中对制作过程有影响全局参数进行设置。
在SourceImageFormat参数区,选择ImageSize(图像尺寸)为320×240像素,Source(图像源)为ImageFile(图像文件)。
在ObjectRig参数区,将Mechanism(悬吊机械装置控制)设置为None(即不使用系统控制机械装置)。
在ObjectGeometry参数区中,VerticalSettings参数用于开发多观察带对象影视时的设置,当进行单观察带对象影视开发时,保留其预设参数即可。
在HorizontalSettings水平参数设置中,Sweep用于设定物体旋转范围,此例设定为360°,右边下拉参数框选取Centeredat(中心定于),旁边参数输入区设为0°;Views用于设定在整个旋转范围中所需要导入的图像数,此例设为36,即图像间隔为10°;AdvanceViews设定图像导入顺序的方向,单观察带对象影视可设为Horizontally(沿水平方向顺序导入图像)。
图1-2
2. 导入图像
当设置完成后,点击Acquire标签进入图像导入模块,见图1-2所示。
在Tools命令区中,Clear按钮用于删除被选中的已导入图像,Single钮用于导入单幅图像,Multiple用于同时导入多幅图像,点击Multiple按钮后,弹出文件选择对话框,此例选系统光盘提供的教程中的图像,见图1-3所示,点击文件名框中的001.jpg文件,再点击Add36钮,36个图像文件名出现在下面的文件选中框中,按Done钮即可将36幅图像同时导入系统。
左边SourceRotation用于将导入图像进行某个角度的旋转,这对于用数码照相机拍摄的图像进行处理是非常方便的。
图像导入后,所有图像的预览排列在界面右下方的预览栏中,其标号方式可用左边的Labelby下拉菜单来选择,有按角度和序号两种方式,见图1-4所示。
用鼠标在预览栏中某张图像上点击一下,它就处于选中状态,此时就可以对它们进行删除或导入新的图像。
图1-3
图1-4
3. 设置热区
导入图像后,就可点击HotSpots标签进入热区设置模块,见图1-5所示。
热区是一个可激活的区域,它可触发一个事件,例如激活浏览器浏览某个在热区中指定的网址等。
VRObjectWorx提供的是在单个视图中定义和管理热区的方案。
用左上角Tools命令区中的各种工具在视图中绘制热区、缩放热区、移动热区以及为热区指定识别色。
用鼠标双击视图中的热区,可弹出热区属性设置框,见图1-6所示,可对此热区的属性进行设置。
例如指定其热区名及需跳转至的网址等。
若不在VR影视中设置热区,则可略过这一部分的设置。
图1-5
图1-6
4. 进行压缩
点击Compress标签进入对象影视压缩模块,见图1-7所示。
在此单元中设定压缩率和图像颜色质量。
在Compression参数框中,ColorDepth用于设置图像颜色质量,此例设为24bit;FrameSize用于设置在压缩前将每帧图像渲染成的尺寸,因为通常将VR影视用于不同场合,则需不同尺寸(例如用于Web或CD-ROM),此例设为320×240像素;点击Set钮则可进入压缩设置对话框,见图1-8所示,在这里可根据需要选择不同压缩编码方案,对于对象影视通常选择Photo-JPEG压缩方式,至于压缩后的图像质量可拖动下面的滑条来预设,当然选择质量越高则压缩后的数据量越大。
所有设置完成后就可点击Compress按钮进行压缩。
图1-7
图1-8
5. 预览结果
压缩完成后就可点击Preview标签进入预览模块,见图1-9所示。
此时就已经可以用鼠标在右边预览窗中拖动汽车转动了。
左边WindowsSize用于设定影视输出后的尺寸,此例设320×240像素。
Attributes命令区设定影视的属性,其中点击Annotate按钮则进入设置影视的注释信息对话框,见图1-10所示;点击Interaction按钮进入交互属性对话框,见图1-11所示,在这里可对影视交互时的方式、控制方法和速率进行设置;点击Animation按钮进入动画设置对话框,见图1-12所示,这里可设置两种动画方式,一种是FrameAnimation帧动画,一种是ViewAnimation。
前者改变某个视图中物体的形态,用于多观察带影视中,后者是将当前观察带中所有视图作循环展示,直到鼠标到窗口中拖动这个物体时才停止。
本例中若选中ViewAnimation,则可在窗口中看见汽车在旋转。
点击Playback按钮,可设置有关影视播放时加强其性能的有关选项,见图1-13,如播放时影视数据的预装入(Preload)和尽可能地使用缓存数据(Cachedata)。
PosterView命令区用于设置影视的标识视图,它可用于QuickTime中的标识图标和预览等用途,设置时将物体拖动至某个视图,然后点击Set钮即可。
InitialView命令区用于设置影视被打开时的初始视图,设置时也是将物体拖动至某个视图,再点击Set钮即可。
最后点击ExportMovie按钮就可将制作完成的对象影视以文件方式输出至磁盘上。
图1-9
图1-10
图1-11
图1-12
图1-13
6. 注意事项
整个对象影视的开发可分为两大部分,前一部分是对物体图像的获取,通常是进行大量的拍摄,然后进行图像处理,后一部分是用VRObjectWorx开发系统进行影视的合成。
比较之下前一部分的工作量更大。
在进行拍摄工作时,应注意将物体固定于转盘中心,避免转盘转动时物体中心到照相机镜头间的距离发生变化,同时也要十分注意照相机的固定,这样就可避免拍摄图像中的物体发生大小变化。
拍摄过程中应避免照明光线强度发生变化,这样会造成图像亮度和色调发生变化。
物体的背景应选择有利于图像处理的颜色,往往对象影视的背景是在图像处理时进行添加的,这样的背景是完全统一的,也非常纯净,有利于提高VR对象影视的质量,因此拍摄时的实际背景应选择十分易于与被摄物体相区别,这样图像处理就会非常方便(应从物体的整个360°范围的全体颜色来考虑选择背景)。
拍摄后的图像应进行图像处理,通常的环节有亮度调整、对比度调整、色调调整、图像锐化等,但应保证每幅图处理后的效果要统一,这样可避免在对象影视中产生视图的跳动。
为了保证对象影视的质量,拍摄物体的图像数应足够多,通常在360°情况下应至少拍36张(即每10°拍摄1张)。
拍摄时采用高质量数码照相机会使图像获取工作更为方便,若采用传统照相机则胶卷处理、图像扫描等环节周期较长,如未达到预期效果需重拍时,则整个过程的耗时较长,有时可能会丧失对某些珍贵物体的再次拍摄的机会,也有可能由此增加开发成本。
在PC机上开发QuickTimeVR影视(三)
——介绍VR制作系统VRToolBox
第二军医大学医学教育技术中心
张力
二、VRPanoWorx的开发环境及使用方法
VRPanoWorx是VRToolBox系列软件中用于开发QuickTimeVR全景影视的制作系统。
QuickTimeVR全景影视是QuickTime影视的一种独特形式,它展示了从一个中心点观察出去的全景视图,这个全景影视展示的是一个全360°的景象,你可以对这景象进行水平的移动、垂直的仰俯视以及缩放,所有这些行为都可通过鼠标的点击拖动和键盘命令来完成。
当然全景影视也可以展示一个小于360°的景象视图。
同样,为了开发出一个全景影视,首先须进行获取图像,通常就是用照相机进行拍摄。
拍摄时将照相机放在一个可旋转的云台上,而云台则固定在一个三角架上。
拍摄时围绕中心点旋转云台,这个中心点确切说就是照相机镜头后的成像面,旋转时注意消除视差和每幅图像间可能出现的缝隙。
在旋转的过程中,要拍摄足够数量的相片,这些相片之间应该覆盖50%。
拍摄完成后,将这些相片输入到计算机中,VRPanoWorx能将它们拼接,最终形成一个完整的无缝的QuickTimeVR全景影视。
另一种不需要拍摄许多照片和进行拼缝的方法是用一些3D渲染程序来产生一个景象视图。
这两种方法的结果是相同的。
VRPanoWorx的系统界面如图2-1所示,它由七个模块构成,也是按开发步骤的顺序来安排的。
图2-1
1. 进行全局设置
启动VRPanoWorx之后系统自动进入Setup模块,见图2-1所示。
SourceFormat用于设置导入图像的形式,此例设为MultipleImages(多幅图像),AcquireFrom用于设置图像来源,通常可选ImageFile(图像文件),也可选择从扫描仪输入图像。
下半部中NodeSweep设置全景图的视图范围,此例设为360°;MaxFrames设置整个全影视所需图像数量,这里设为18;LensParams是用于设置照相机镜头的焦距参数,有两种设置方法,一种是选Length(焦距),然后指定一种焦距参数,比如设Length为28mm;另一种是选F.O.V(垂直视野)并指定相应的角度数,复选框Rectilinear用于设定所使用的镜头是否为线性镜头。
ImageSize用于设置导入图像尺寸(宽×高),单位是像素,若其所列尺寸与实际图像不符时,可选相近的参数,或选Custom后输入实际图像尺寸,此例设为446×662。
2. 导入图像
设置完成后点击Acquire进入图像导入模式,见图2-2所示。
界面的右面是导入图像的示意展示栏。
Tools命令中的Clear钮用于删除所选中的已输入图像。
Image命令中Single钮用于将单幅图像导入至示意展示栏中已选中的位置;Multiple钮用于将所需的多幅图像一次导入,点击它后弹出图像导入文件选择对话框,见图2-3所示,此例选择系统光盘提供的教程中的图像文件,点击001.jpg文件名进行选择,然后点击Add18按钮后,再点击下半部的Done按钮,所有18幅图像则一次导入。
图像导入后依次呈现在示意展示栏中,见图2-4所示,若需对某位置的图像进行删除或再导入,应先将某位置中的图像点击选中,然后再进行所需的操作。
图2-2
图2-3
图2-4
3. 图像拼接
图像导入后点击Stitch标签进入图像拼接模块,见图2-5所示。
Command命令组中有两个按钮,点击Tolerance按钮后,弹出图像位移容差对话框,见图2-6所示。
从理论上讲,VRPanoWorx能从图像数量、视野和图像尺寸等参数中计算出图像间的准确位移,但实际上完美的位移是很难实现的。
在这种情况下,我们就可使用图像位移容差对话框中的设置,直到VRPanoWorx得出图像间正确位移。
我们可以用这里垂直和水平两个滑条来设置图像位移容差。
垂直容差就是图像拼接时上下移动的范围;水平容差是当图像不一致时所需调整的范围。
通常容差保留系统的预设值,只有当覆盖区域拼接的图像出现明显的阶梯现象时,可调整容差,让系统再自动分析计算并重新拼接图像。
调整容差时,每次拖动垂直或水平容差滑条一格,然后再拼接图像,直至满意,但容差调整过多时,会明显增加系统拼接图像所需的计算时间,甚至会失去图像间的相关性而导致无法拼接图像。
此例中,保留系统预设的容差值,点击OK钮推出图像位移容差对话框即可。
Stitch按钮用于进行图像拼接,点击后系统进行图像分析和参数计算,拼接完成后结果显示于右边的图像展示栏中,见图2-7所示,可以拖动展示窗下的滚动条来浏览整个图像,在展示窗中点击某幅图像,则将其选中,以备于进行位移微调。
DisplayOption中的Transparent复选框选择拼接图像显示方式,不选时为覆盖显示,选中时为透明显示,这样可为你调整图像位移提供方便。
Adjustments命令组的四个箭头按钮用于对已拼接后的图像进行位移微调,微调前应先在展示栏中将需微调的图像选中,然后点击相应的箭头按钮即可。
图2-5
图2-6
图2-7
4. 图像混合
图像拼接完成后就可点击Blend标签进入图像混合模块,见图2-8所示。
图像混合是将拼接后的图像创建为一个全景图像。
Commands中Blend按钮用于进行图像混合操作,点击后系统即进行此项运算处理并将结果显示于右边的全景图圆柱展开栏中(首次进入次模块时,全景图展开栏为空白),拖动下方滚动条可对其进行全图浏览。
Effects命令组中两个参数用于设置混合时的效果,Blend滑条用于设置图像混合的程度;Sharpen滑条用于设置图像混合后的锐化程度,此例中这两个参数采用系统预设值。
Size命令组中显示了全景展开的尺寸,点击Set钮可对其尺寸进行改变,见图2-9所示,注意其中对高度尺寸的改变有缩放和裁剪两种选择。
在图像混合模块中,若对某个参数进行了新的设定,则应再次点击Blend按钮重新进行图像混合。
图2-8
图2-9
5. 设置热区
图像混合完成后,可根据需要进行热区的设置,点击HotSpots标签就可进入热区设置模块,见图2-10所示。
其功能及设置方法与前节VRObjectWorx中设置热区内容相同,只需参阅此节内容即可。
图2-10
6. 进行压缩
图像混合完成后或热区设置完成后,就可进行压缩了。
压缩是VRPanoWorx建立全景影视过程中的重要环节,在这个模块中要设定图像压缩率、颜色显示质量和在QuickTimeVR存储格式等重要参数,界面如图2-11所示。
在Compress命令组中,点击Set按钮可选择编码器(压缩方法)及压缩率(图像质量);ColorDepth下拉选单用于设定图像颜色种数。
Dicing命令组用于设置重叠矩阵;DefaultViewAngle命令组用于设置影视的预设视角,这两组设置通常都只要保留系统预设值即可。
最后点击Commands中的Compress按钮就可完成压缩过程了。
图2-11
7. 预览结果
压缩完成后就可对产生的全景影视进行预览。
点击Preview标签进入预览模块,见图2-12所示。
全景影视此时已呈现在右边的展示栏中。
WindowSize可设置影视的播放窗口的尺寸。
Attributes命令组中的Annotate按钮用于为全景影视添加注释信息。
Interaction按钮用于设置用户在全景影视中进行交互的一些相关参数,点击它后弹出交互属性对话框,见图2-13所示,其中Mouse命令组中的Hysteresis滑条用于设置QuickTimeVR能够识别的鼠标移动范围的直径,TimeOut滑条用于设置一个时间长度,这个时间长度是鼠标在热区上点击直到QuickTimeVR识别此点击为平移或倾斜全景影视的时间;Speed命令组中PanTile滑条用于设置平移或倾斜全景影视的速度,Zoom滑条用于设置全景影视的缩放速度。
Attribute中Imaging按钮用于设置全景影视的图像属性,点击它后弹出图像属性对话框,见图2-14所示,它有两个部分,其Static命令组的滑条用于设置静态图像的属性,即全景影视中无交互发生时的图像属性;Motion命令组的滑条用于设置动态图像的属性,即全景影视中发生交互时的图像属性。
Attributes中Playback按钮则用于设置对全景影视的数据进行预载入或暂存等相关属性。
Constraints命令组用于设置全景影视在播放时的初始状态,其中包括初始视图,最大缩放角度和最小缩放角度等参数。
设置完成后可在右边预览展示栏中对全景影视进行各种交互操作的预览,效果满意后点击ExportMovie按钮输出制作完成的全景影视,此时弹出保存文件对话框,选择文件夹和文件名就可保存全景影视文件了。
图2-12
图2-13
图2-14
8. 注意事项
在进行全景影视的开发中,图像的获取和处理是十分重要的。
在拍摄照片时要保证每幅图像间应覆盖50%。
为了有足够的垂直视野,通常可将照相机竖起拍摄(水平范围则可由足够的图像数来保证),同时要注意在进行全局设置时设定合适的焦距值(应与镜头上标定的相一致)。
照相机应垂直固定在三角架的水平转动云台上,这样可使图像在拼接时之需较少的容差值,并加快计算速度。
在室外进行360°拍摄时,总会遇到逆光面和顺光面,两者在图像上的亮度会有很大差异,因此需将这些图像放在图像处理软件(如Photoshop)中进行处理,这样可得到一致性很好的图像。
在室外拍摄时还需注意天气状况,例如当空中有云飞过并遮挡太阳时,自然光的强度会在一个较短时间内发生很大变化,如果拍摄一定要在这段时间完成,则对照片进行图像处理是必不可少的。
通常在室外拍摄时应尽可能在较短时间内完成,这样可避免由于自然光强度变化带来对图像处理工作量的增大。
在PC机上开发QuickTimeVR影视(四)
——介绍VR制作系统VRToolBox
张力
三、VRSceneWorx的开发环境及使用方法
VRSceneWorx是VRToolBox系列软件中用于开发QuickTimeVR多节点景象的操作系统。
节点是在此景象中被链接的QuickTimeVR全景影视、对象影视、静态图像或线性QuickTime影视。
景象中的这些节点相互依据交互的逻辑关系被链接在一起,因而在播放QuickTimeVR多节点景象时,视图会随着交互依照这些链接发生跳转,形成了可由用户交互控制的身临其境的视听环境。
VRSceneWorx的功能就是将这些已有的节点源媒体文件按逻辑关系进行链接并构成新的具有交互的QuickTimeVR多节点景象。
VRSceneWorx的系统界面如图3-1所示。
它由五个部分组成,也是子按开发多节点景象的步骤顺序来安排的。
1. 全局设置
启动VRSceneWorx之后,系统自动进入Setup模块,见图3-1。
在GeneralDefinition命令组中,Name用于设置项目名称,此名称也将用于保存文件时的预设名,它也是嵌入最终开发的QuickTimeVR影视中的信息,此例中可输入:
RomanColiseum。
Orientation用于指定整个VR景象的基准方向,此例选择0°,即朝向屏幕上方为0°。
MasterSize用于设置存储于QuickTimeVR影视中所有源媒体的尺寸,此例设为320×240。
PlaybackSize用于设置最终QuickTimeVR影视在播放时的尺寸,此例中也设为320×240,若MasterSize与PlaybackSize不同,则在播放时的尺寸将从前者缩放至后者。
在SceneBoundary命令组中,Dimensions用于设置要表达的VR景象的宽和高及其相应单位。
Scale用于设定一个网格中的比例尺。
BackgroundGrid用于设定背景网格,它用于在背景设置模块中辅助背景对象的放置与定位。
Divisions中的参数指定了背景网格中一个大格子中的小格子数,当选择Active复选框时,背景对象将自动对齐在网格线上。
NodeGrid的作用与BackgroundGrid相似,只是它出现在节点设置模块中,