全景漫游方案(web手机)
全景漫游方案(web+手机)
一、项目概况
1.1 建设背景
传统的博物馆大多没有网上展馆的功能,观众往往要花费很长的时间和精力,亲自到博物馆,才能了解博物馆的内部环境、展品的摆放位置、和相关说明。这样对博物馆的影响打了很大的折扣,不利于知识的传播和教育。即使是现有的部分网上展馆系统,大部分是通过图片和文字来进行内容介绍,观众只能被动的接收,缺少互动性,因而观众的参与意愿较低。
本项目针对这些问题,设计并制作了一套架构于WEB和手机端的的全景虚拟参观系统,可以让参观者用鼠标或手指滑动在博物馆中达到认识、学习、导览和体验的目的,改善传统博物馆的不足。
1.2 建设内容
以超高清摄像设备全视角拍摄作品全貌。与静态的二维平面图片不同,全景摄影借助于计算机和互联网技术,让人能够身临其境,在仿真的3D环境之中观展。
透过指尖的触碰全方位重现场景全貌,更可动态地欣赏全景的全部或某一部分的细节,最大限度的主动化视角,从大特写到超广角,或远或近、或俯或仰,自主操控展示方式。
二、项目内容
1) 为上海中心丝绸文化盛宴展览采集 2017 年馆内全年展览的 360°全景游览数据,并提供多套版本以供不同渠道的应用,具体版本要求如下:互联网应用:每张全景图像的分辨率为 21500×10750,为网站访问者提供在线展览的 360°全景游览。
移动终端应用:每张全景图像分辨率为 2048×2048,为微信公众平台等提供在线展览的 360°全景游览。
2)展览的全景游览具体功能实现
作为实体展览的网络延伸,展览全景不仅需要通过多媒体应用版及管内留档版进行存留,还需要通过互联网进行呈现,为突破了传统互联网浏览局限,需满足通过移动终端的方式将展览全景呈现在观众面前,需项目承接方保证用户在访问过程中全方位的对全景进行游览,即水平360°和垂直 180°进行拖动操作,要求实现全方向平滑转动;提供两种拖动操作方式,即全景转动方向和鼠标拖动方向同向与反向,以满足不同用户的使用习惯;实现放大、还原功能,可以对全景进行逐级放大,并且在放大后能够逐级还原到初始大小;需提供手动游览和自动游览两种浏览方式。
3)展品的访问及显示
在全景场景中,将图文、音频、视频介绍以及高清大图整合于一个播放器内进行展示,用户通过点击兴趣点或展品框体的方式就可以便捷的浏览。
实现如下功能需求,但不限于这些功能
★展品及展览内容以图标/兴趣点进行点击弹出展示功能
★支持图文展示;
★支持音频介绍;(建议不易过多)
★支持视频介绍;(建议视频不易太长)
★支持展品高清大图展示;
展品及展览内容以图层线框进行点击弹出展示功能
★支持图文展示;
★支持音频介绍;
4) 数据保护和加密
★为了保护原始数据的安全,避免原始数据直接在网上泄露、传播,项目承接方对原始数据进行加密保护,使得用户无法在本系统外直接使用。
★项目承接方提交所有原始数据交由馆方保存,不得保留备份。
三、项目实施
全景漫游是指在由全景图像构建的全景空间里进行切换,达到浏览各个不同场景的目的。全景漫游系统的实现是需要相应的硬件和软件的结合。首先需要相机和鱼眼镜头、云台、三角架等硬件来拍摄出鱼眼照片,然后使用全景拼接软件把拍摄的照片拼合,发布成可以播放和浏览的格式。
具体制作过程和技术路线如下:
现场实景
实景场景实景图
3.1 全景图片采集
使用全景相机来直接采集一张柱面全景图像
3.2 全景图片规范
3.21 目的
为了满足全景图展现时所需要的数据,通过拍摄人员前期对景区内部的拍摄、后期加工处理,使成果数据最终达到公司规格需求。
3.22 要求
1) 文件格式:JPG 格式
2) 成图像素:不得低于 8192×4096
3.23 定义
3) 全景图:即通过对专业相机捕捉整个场景的图像信息或者使用建模软件渲染过后的图片,使用软件进行图片拼合,并用专门的播放器进行播放,即将平面照片或者计算机建模图片变为 360 度全观。
拍摄选点
3.24选点规则
1.展览入口处
2.第一章
3.宋庆龄纪念广场全景(含宋庆龄汉白玉雕像)
4.宋氏墓地(全景、宋庆龄墓)
5.名人墓园
6.外籍人墓园
3.25 选点拍摄要求
正门外景
1) 尽量一张全景图表现所有的细节和内容;
2) 画面中前后左右的构图要美观,内容要丰富;
3) 突出景区的Logo 和主建筑,光线最好是侧光或者顺侧光,使得层次丰富立体感强烈。
特色地方
1) 对特色地方一张全景图表现所有内容;
2) 画面中前后左右的构图要美观,具有一定的艺术性。内容要丰富,主题要求完整、空出亮点、体现细节。图片色彩鲜明,不存在色调单一的情况,但特殊场景除外,如:雪景。
3) 需要突出的部分,光线最好是侧光或者顺侧光,这样层次丰富立体感强烈,可以突出主体。
4) 升高三脚架拍摄,可以的话可以采用高杆拍摄。
5) 尽量找高位拍摄,画面上既可以俯览也可以仰望,使得画面更大气。 -- 在拍摄全景的时候,都是以一个点作为中心,360度拍摄,所以不能在高位拍摄。
3.26拍摄时间要求
收集待采集区域的天气情况,结合采集计划,合理安排实采计;建议拍摄时间段:除特殊景色外,如:日出、晚霞;
1) 正常天气,春夏采集时间段约为:白景9:00-18:30。
2) 正常天气,秋冬采集时间段约为:白景9:30-16:30。
3) 天气要求:天气需晴好,能见度需在8KM 以上,风力<=4 级,若出现扬沙、雾、霾等天气时不能进行采集。
3.27 拍摄方法
拍摄全景图的设备都有一定的要求,一般都用鱼眼镜头。鱼眼镜头是一种焦距为 16mm 或更短并且视角接近 180°的镜头,它是一种广角镜头,“鱼眼儿镜头”是它的俗称。
3.28 拍摄要求
1) 尽量安排在游人较少的时间段进行采集工作。拍摄过程中,相机保持固定,不要移动,拍摄完毕后方可移动三角架;
2) 拍摄过程中,尽量避开大树,行人等对象,寻找开阔的地点进行拍摄。有游人明显接近取景框时,需要等其离开再进行拍摄,避免不相关的人员占据相片的1/2。同一组相片必须同时拍完,若拍摄过程中被行人或车辆等打断,此场景点需要重新拍摄;
3) 在同一个场景点拍摄过程中,相机的移动速度不要太快,避免快门未完全闭合导致的画面不清晰现象;
4) 关闭相机中的日期、时间项。时间、日期不能出现在图片中。
3.29 自检内容
每拍摄完一组图片后,都需要对拍拍摄的图片成果进行自检,自检内容为:
1) 图片中是否存在人的比例过大情况;
2) 图片中是否存在相机带、头发等景物;
3) 图片是否存在过曝/欠曝的情况;
4) 图片中是否存在跑焦的现象;
5) 图片中是否存在由于快门过慢导致焦距不清晰的情况;
6) 图片中是否存在由于抖动等误操作造成画面不清晰的情况;
7) 图片中是否存在脏点的情况(可检验天空上是否有存在脏点的情况)。
3.3 全景图的拼接
全景照片的拼接主要使用现有的软件就能完成。现在国内外有很多拼接软件可供使用,如cool 360,PTGui Pro, Realviz Stitcher5.1,Pixtra Viewer,上海杰图的造景师等等。下面就用PTGui Pro进行全景照片的拼接(以鱼眼照片为例。
图像的预处理
在图像采集的过程中,由于自然或人为因素,图像之间的亮度、灰度、颜色和形状等属性会有所不同,所以需要对图像中出现的几何失真、对比度低、变形等情况进行预处理,从而提高图像的质量以保证图像配准和拼接过程的顺利进行。
(1)加载图像:选择要拼接的2张或多张照片,加载到此软件中,在此功能中可以对加载的照片进行排序、剪裁工作,并且设置镜头的参数。
排序:调整好照片的左右位置,便于正确拼接。
剪裁:可以修剪照片中不需要的边缘部分,如鱼眼照片可能会有黑边,可以用此功能对其进行去除。镜头的参数:可以选择“自动”选项,让软件自动判断设置此参数,但如果已知镜头参数的话,可以手动设置(拼接鱼眼照片镜头类型为:环形,水平角度一般为180°)。
投影变换
由于采集到的一组反应全景的图像是在不同角度下拍摄的,因此这组图像并不在同一个投影平面上,并且投影平面之间存在着一定的夹角,如果对这组重叠的图像直接进行拼接的话,则会破坏实际景物中各个对象之间的视觉一致性,例如景物中的直线在拼接后会变成折线。为了保证实际景物的空间约束关系,在拼接全景图像之前,必须将所得到的反映各自投影平面的图像统一的投影到同一个坐标系上,一般有立方体形、球形和圆柱形三种模型。不同模型的全景图在存取难易程度和观察效果上均有很大的差异。
图像配准
图像配准算法是全景图拼接技术的核心和关键,图像配准算法的好坏将直接影响到全景图的拼接质量。基本思想是对重叠图像采用一定的匹配策略,以确定相邻两图像间的拼接位置。
由于图像配准技术在众多领域中起着非常重要作用,因此国内外的研究者们对其进行了深入的研究,并提出了很多种配准方法,但是目前还存在着很多问题。这主要是因为相机在拍摄图像序列时由于拍摄时间、拍摄角度、自然环境的变化、多种传感器的使用和传感器本身的缺点,使得拍摄的图像序列不仅受噪声的影响而且存在着严重的灰度失真和几何畸变,在这种条件下,相机所获取的待配准图像序列之间就必然存在着差异。因此如何统一这种差异,以及配准精度的提高、速度的提高、匹配正确率的提高、鲁棒性和抗干扰性的增强以及并行实现等问题都是制约配准技术发展的重要因素。
图像融合
拼接后的图像由于分辨率和视角的不同以及受到光照等因素的影响,在图像拼接的重叠部分会产生模糊、鬼影或噪声点,边界处也可能有明显的接缝。为了改善拼接图像的视觉效果和质量,需要对拼接后的图像进行融合处理。即图像融合是指图像拼接中调整配准后,对图像的像素值进行处理的过程。它使图像在拼接后不会看出拼接的痕迹同时融合后的图像也尽可能地保持原有图像的质量。也就是说通过图像融合,必须达到两个目的:一是使图像间的接缝在视觉上不可察觉;二是尽可能地保持图像的质量。
(1)对准图像:准备工作完了之后就可以对准图像,也就是照片拼接。此功能也可以让软件自动完成,但一般都需要手动加入一些控制点。在“控制点”标签下,选择要拼接的两张照片,在相重合的地方点击,选择至少3个同名像点,这些同名像点遵循均匀分布的原则。完成后进行一下“优化”处理,判断同名像点选取的是否合理,如果优化器优化后结果不错,可以接受优化并可以在全景编辑器中查看拼接的全景照片,并且可以对照片进行整体编辑,选择视野、投影方式等。在此功能中还能进行曝光/HDR的调整,修改拼接好的全景图,当然也可以在photoshop中进行。
(2)创建全景图:在此功能中可以选择要输出的全景图的尺寸、格式、图层以及保存路径。选择好后就可以输出了。
3.4构建全景漫游系统
漫游是在建立一个场景的项目之后,对多个场景的交互和跳转,其内容包括位置和漫游两部分,当柱面全景制作好后,所得到的仅仅是单个视点的浏览,并不能称之为是真正的虚拟现实实景,必须对制作好的全景进行合理地空间编辑和组织。本课题采用Pano2VR软件将全景图导入后,进行一些参数的设置,根据实际需要可以修改图像质量,显示大小和播放帧数;如需全景自动旋转,可以点击右边的开启自动旋转功能,一般选择加载完毕后开始旋转。最后选择输出一个swf文件格式,在360°全景网站制作时,将全景展示文件嵌入在网站某页面里,发布后,即可供使用者浏览。
制作全景图像,实现全景漫游。现在国内外也有许多软件能够完成,如上海杰图的漫游大师、pano2vr等。由于现在flash插件的广泛使用,因此下面使用pano2vr软件制作flash格式的全景漫游。
(1)选择要制作的全景图,用pano2vr软件打开,输入类型选择“自动”默认就行当然也可以根据需求选择“立面体”、“柱形”、“平面”等类型。
(2)可以“显示参数”标签中设置初始视场的方位、大小等参数,在“用户数据”标签中设置用户信息,在“交互热区”标签中设置场景切换热键,在“音频”标签中加入音频到全景中。
(3)在“输出”标签中选择“flash”格式输出,并且可以选择一个自带的皮肤或自制的皮肤加载其中。一个简单的全景图漫游就完成了。
3.5发布虚拟全景网页
当一个全景制作好后,往往会将其发布到网上以供人们便于浏览,了解场景环境,因此发布虚拟全景网页势在必行。在pano2vr软件中就能方便的实现此动作。
在“输出”标签中选择flash格式后,点击后面的“增加”按钮,在弹出的flash输出设置框中选择“HTML”标签,开启HTML文件输出,对HTML文件的外部化、模板进行需求设置,完成之后会创建一个HTML文件,此文件就是将全景图发布到网上,实现虚拟漫游。
以下代码是代码,加上了注释:
//定义相机,场景,渲染器,是3D场景形成的三大要素
var camera, scene, renderer;
//定义几何体,材质,以及几何体加材质之后形成的网格
var geometry, material, mesh;
//生成三维向量(0,0,0),相机的目标点
var target = new THREE.Vector3();
//lon 经度竖着的有东经西经;lat 维度横着的有南纬北纬
//该经纬表示相机的聚焦点,初始状态在前面
var lon = 90, lat = 0;
//同样是相机的聚焦点,上面是角度,此处转化为弧度制
var phi = 0, theta = 0;
//移动端用户输入的x,y
var touchX, touchY;
init();
animate();
function init() {
//相机的默认位置在坐标系的原点
camera = new THREE.PerspectiveCamera( 75, window.innerWidth / window.innerHeight, 1, 1000 );
scene = new THREE.Scene();
//右手坐标系,z朝向观察者,即相机。下面是将六个面拼接成立方体,分别对应
var sides = [
{
url: 'res/Bridge2/posx.jpg', //左侧
position: [ -512, 0, 0 ],
rotation: [ 0, Math.PI / 2, 0 ]
},
{
url: 'res/Bridge2/negx.jpg', //右侧
position: [ 512, 0, 0 ],
rotation: [ 0, -Math.PI / 2, 0 ]
},
{
url: 'res/Bridge2/posy.jpg', //上侧
position: [ 0, 512, 0 ],
rotation: [ Math.PI / 2, 0, Math.PI ]
},
{
url: 'res/Bridge2/negy.jpg', //下侧
position: [ 0, -512, 0 ],
rotation: [ -Math.PI / 2, 0, Math.PI ]
},
{
url: 'res/Bridge2/posz.jpg', //前
position: [ 0, 0, 512 ],
rotation: [ 0, Math.PI, 0 ]
},
{
url: 'res/Bridge2/negz.jpg', //后
position: [ 0, 0, -512 ],
rotation: [ 0, 0, 0 ]
}
];
//将六个图片添加到场景中
for ( var i = 0; i < sides.length; i ++ ) {
var side = sides[ i ];
var element = document.createElement( 'img' );
element.width = 1026; // 2 pixels extra to close the gap. element.src = side.url;
//CSS3DObject 是拓展出去的方法,原型是object3D,见
CSS3DRenderer.js
var object = new THREE.CSS3DObject( element );
object.position.fromArray( side.position );
object.rotation.fromArray( side.rotation );
scene.add( object );
}
//渲染器也是拓展出来的方法,见CSS3DRenderer.js
renderer = new THREE.CSS3DRenderer();
renderer.setSize( window.innerWidth, window.innerHeight ); document.body.appendChild( renderer.domElement );
//添加鼠标,手势,窗口事件
document.addEventListener( 'mousedown', onDocumentMouseDown, false );
document.addEventListener( 'wheel', onDocumentMouseWheel, false );
document.addEventListener( 'touchstart', onDocumentTouchStart, false );
document.addEventListener( 'touchmove', onDocumentTouchMove, false );
window.addEventListener( 'resize', onWindowResize, false ); }
function onWindowResize() {
//窗口缩放的时候,保证场景也跟随着一起缩放
camera.aspect = window.innerWidth / window.innerHeight;
camera.updateProjectionMatrix();
renderer.setSize( window.innerWidth, window.innerHeight ); }
function onDocumentMouseDown( event ) {
event.preventDefault();
//保证监听拖拽事件
document.addEventListener( 'mousemove', onDocumentMouseMove, false );
document.addEventListener( 'mouseup', onDocumentMouseUp, false );
}
function onDocumentMouseMove( event ) {
//鼠标的移动距离 currentEvent.movementX =
currentEvent.screenX - previousEvent.screenX
var movementX = event.movementX || event.mozMovementX || event.webkitMovementX || 0;
var movementY = event.movementY || event.mozMovementY || event.webkitMovementY || 0;
lon -= movementX * 0.1;
lat += movementY * 0.1;
}
function onDocumentMouseUp( event ) {
//保证监听拖拽事件
document.removeEventListener( 'mousemove', onDocumentMouseMove );
document.removeEventListener( 'mouseup', onDocumentMouseUp );
}
function onDocumentMouseWheel( event ) {
//相机的视觉随着鼠标滚动的距离拉进或者远离
camera.fov += event.deltaY * 0.05;
camera.updateProjectionMatrix();
}
function onDocumentTouchStart( event ) {
event.preventDefault();
//移动端没有movement,所以直接用touchX touchY去计算移动的距离 var touch = event.touches[ 0 ];
touchX = touch.screenX;
touchY = touch.screenY;
}
function onDocumentTouchMove( event ) {
event.preventDefault();
var touch = event.touches[ 0 ];
lon -= ( touch.screenX - touchX ) * 0.1;
lat += ( touch.screenY - touchY ) * 0.1;
touchX = touch.screenX;
touchY = touch.screenY;
}
//开启动画
function animate() {
requestAnimationFrame( animate );
lon += 0.1;
lat = Math.max( - 85, Math.min( 85, lat ) );
phi = THREE.Math.degToRad( 90 - lat ); //角度转为弧度制 theta = THREE.Math.degToRad( lon );
//在球坐标系中算出相机的聚焦点的坐标
target.x = Math.sin( phi ) * Math.cos( theta );
target.y = Math.cos( phi );
target.z = Math.sin( phi ) * Math.sin( theta );
camera.lookAt( target );
renderer.render( scene, camera );
}
四、项目进度表
五、项目人员安排
三维虚拟校园漫游系统设计
Scientific Journal of Information Engineering June 2013, Volume 3, Issue 3, PP.50-55 Design of 3D Virtual Campus Roaming System Hongyan Yang, Zhuo Shi, Yanru Zhong# College of Computer science and engineer, Guilin University of Electronic Technology, Guilin Guangxi 541004, China #Email: rosezhong@https://www.360docs.net/doc/9315226253.html, Abstract With the growing sophistication of virtual reality technology, 3D virtual campus roaming system as effective platform for school propaganda outside, the campus planning and management decision will provide a strongly support. Taking the campus of Guilin University of Electronic Technology as prototype, combing with the software of 3Ds Max and using VR-Platorm development platform connections with the backend database and virtual building and live Imaging shooting, a real-time roaming system of virtual campus has been designed and implemented. In this paper, the main aim is to explore a new idea for digital campus construction. Keywords: Virtual Reality; VR-Platform; Digital Campus 三维虚拟校园漫游系统设计* 杨宏艳,史卓,钟艳如 桂林电子科技大学计算机科学与工程学院,广西桂林 541004 摘要:随着虚拟技术的日益成熟,三维虚拟校园漫游系统作为学校对外宣传的有效平台是数字化校园建设的核心。以桂林电子科技大学东校区为例,结合三维仿真技术3DS max实现了虚拟校园的三维模型。运用VR-Platorm开发引擎,结合SQL Server数据库连接设计并实现了三维虚拟校园漫游系统。实现了自主漫游、按目的地自动生成漫游路径、定位鸟瞰等功能。实验结果表明:经过改进的场景优化技术,系统在普通PC机上运行稳定、流畅、高效。 关键词:虚拟现实;VR-Platform;数字校园 引言 20世纪80年代美国人Jaron Lanier首次正式提出了虚拟现实[1](Virtual Reality)概念。自此,这种利用计算机模拟虚拟世界,提供用户身临其境的视觉、听觉、触觉的感官模拟技术,因其具有感知性、沉浸性、交互性和构想性的特点,如今已广泛应用于城市规划、文物保护、交通模拟、虚拟现实游戏及远程教育等领域。“虚拟校园”是随因特网、虚拟现实技术、网络虚拟小区等的发展而产生,是基于现实校园对三维景观和教学环境数字化模拟的产物。数字化校园虚拟漫游系统是数字校园建设计划的核心平台。当前浙大率先开发展示了虚拟校园之后,国内众多高校如清华、南京大学、北航、香港中文大学等高等院校纷纷建立自己的虚拟校园[2-3] 。 通常,三维虚拟校园开发的主要方法是用ArcGis,SuperMap和其它具有三维功能的软件进行二次开发。但这些方法明显的缺点是对开发者的编程水平要求较高,建模代码太长,开发系统不能独立于运行环境。考虑到以上情况,本文选择VR-Platform为开发环境,提出了一种简单实现虚拟校园的方法。这种方法一方面能利用专业的建模工具3DS MAX软件很快实现三维场景模型的建立。另一方面,通过运用VRP引擎高效的模块化的编程能力,能够进行实时渲染和交互控制,减少了建模时间加速了系统开发的进程。另 *本文受国家自然科学基金(NO.50865003)和广西科学制造系统和先进制造技术开放基金资助(No.K090014)以及新世纪广西高等教育教改工程项目(No. 2011JGB048)“以工程应用能力为导向的数字媒体技术人才培养模式的探索与实践”基金资助。
三维全景虚拟漫游技术
一、意义 三维全景虚拟漫游技术的核心是通过计算机产生一种如同“身临其境”的具有动态、声 像功能的三维空间环境,而且使操作者能够进入该环境,直接观测和参与该环境中事物的变 化与相互作用。因此,将三维全景虚拟漫游技术应用于航天仿真研究,不但可以使得该领域 内的计算机仿真方法得到完善与发展,而且也将大大提高设计与试验的逼真性、实效性和经 济性,具体表现在如下几个方面: 1.人-机界面具有三维立体感,人融于系统,人机浑然一体。以座舱仪表布局为例,原 则上应把最重要且经常查看的仪表放在仪表板中心区域,次重要的仪表放在中心区域以外的 地方。这样能减少航天员的眼动次数,降低负荷,同时也让其注意力落在重要仪表上。但究 竟哪块仪表放在哪个精确的位置,以及相对距离是否合适,只有通过实验确定。因此利用 R 作 为工具设计出相应具有立体感、逼真性高的排列组合方案,再逐个进行试验,使被试处于其中,仿佛置身于真实的载人航天器座舱仪表板面前,就能达到理想客观的实验效果。 2.继承了现有计算机仿真技术的优点,具有高度的灵活性。因为它仅需通过修改软件中 视景图像有关参数的设置,就可模拟现实世界中物理参数的改变,这样,随着任务的变化, 已有的软件再经修改即可满意新任务的要求,所以十分灵活、方便。 3.突破环境限制。现有航天仿真的计算机系统体现不了空间失重环境,而建立三维全景 虚拟漫游系统,通过虚拟的景象和声响就可以使被试处于太空飞行中实际的载人航天器座舱中,据此展开的相应试验研究具有实际意义。 4.节省研究经费。改用真实的航天器进行相应的试验研究是不可能实现的,因为耗资巨大,经费条件不允许。而采用三维全景虚拟游技术,由于其研制周期较短,设计修改和改型 仅通过软件修改实现,可重复使用,设备损耗低,这样可大大节省经费投入。 二、研究现状 1965年,美国麻省理工学院的科学家设计了一种头盔显示器,通过传感器和计算机仿真 环境的相互作用,可以感觉到自己在几何图形中的移动,产生身临其境的感触感染,由此诞 生了一种新的仿真手段三维全景虚拟游技术。但由于其研制的头盔显示器性能较差,价格昂贵,很长时间内该项技术得不到应用。随着计算机图形学的发展,80年代中期,美国艾姆斯 航天研究中心利用流行的液晶显示电视和其它设备开始研究低成本的三维全景虚拟游系统, 这对于三维全景虚拟漫游技术的软、硬件研制发展推动很大。到了90年代,该项技术受到广 泛关注并向实用迈进。例如美国马歇尔空间飞行中心研制载人航天器的 R座舱,指导座舱布 局设计并训练航天员熟悉航天器的舱内布局、界面和位置关系,演练飞行程序。目前,美国 各大航天中心已广泛地应用 R技术开展相应领域内的研究工作。在 R技术传入我国后,除几 所院校建立一些初步的 R系统模型外,尚无在航天仿真领域展开此项技术的应用研究。 一般而言,三维全景虚拟漫游系统具有两大特点:可以从数据空间向外观察和被试可以 沉醉到数据空间中。它是通过对研究对象的模型进行计算机仿真,由计算机结果去控制虚拟 一
(整理)人机交互课程设计---VRML设计--虚拟校园漫游系统.
《人机交互》综合设计报告 设计名称:人机交互综合设计 选题名称:VRML设计--虚拟校园漫游系统 姓名学号: 专业班级: 系(院): 设计时间: 指导教师评语: 成绩: 签名: 年月日
目录 一、概述 (3) 1、项目背景 (3) 2、系统简介: (3) 3、开发环境: (3) 4、主要技术 (3) 二、需求分析 (4) 1、用户分析 (4) 2、用户设计流程 (4) 3、任务分析 (4) 三、设计 (5) 1、界面设计原则 (5) 2、设计模型 (5) 3、系统描述 (6) 4、使用的交互技术 (6) 四、界面实现 (6) 五、主要源码设计 (7) 六、可用性评估 (8) 1、评估指标体系 (9) 2、具体步骤 (9) 3、结果分析 (10) 七、结论 (10) 1、总结.......................................................................................................................... 错误!未定义书签。10 2、不足之处 (10) 3、心得体会 (10)
一、概述 1、项目背景 VRML是一种建模语言,也是一种描述Internet上交互式3D多媒体和共享虚拟世界的开放标准。 VRML定义了一组用以描述三维图形的对象,这些对象称为节点,节点被组织成一种分层的结构,称为场景。使用场景图数据结构来建立3D场境。场景图是一种代表所有3D世界静态特征的节点等级:几何关系、质材、纹理、几何转换、光线、视点以及嵌套结构。境界中的对象及其属性用节点描述,节点按照一定规则构成场景图,也就是说,场景图是境界的内部表示。场景图中的第一类节点用于从视觉和听觉角度表现对象,它们按照层次体系组织起来,反映了境界的空间结构。另一类节点参与事件产生和路由机制,形成路由图,确定境界随时间的推移如何动态变化。 VRML用文本信息来描述三维场景,在Internet上传输,然后在本地机上由VRML 浏览器解释生成三维场景。这种工作机制,避免了在网络上直接传输图形文件,把复杂任务交给本地机器,从而减轻了网络的负担,使得在Internet上的三维交互成为可能。 VRML的访问方式是基于客户/服务器模式,其中服务器提供VRML文件及支持资源,客户通过网络下载希望访问的文件,并通过本地平台上的VRML浏览器交互式访问该文件描述的虚拟境界,因为浏览器是本地平台提供的,从而实现了与硬件平台的无关性。 现今,基于VRML的虚拟校园漫游系统已经有很多成功案例,如成都电子科技大学、义乌工商学院等,都已成功开发出了虚拟校园漫游系统。 2、软件定义: 基于VRML的虚拟校园漫游系统 3、系统简介: 通过VRML制作的虚拟校园是个规模较大的三维场景,旨在通过网络展示校园风貌,用户可以走入虚拟校园中,观赏校园的自然风貌,领赂校园的生活氛围。浏览者可以利用输入设备控制自己的视点和视角,对这个虚拟场景进行全方位的浏览和交互。 4、开发环境: 3DMax,NetScape浏览器
建筑漫游动画
建筑漫游动画
————————————————————————————————作者:————————————————————————————————日期:
建筑漫游动画是三维动画领域中的一个极其重要的领域。从上世纪90年代开始,建筑从工程图、效果图绘制发展到本世纪的动画漫游,提供了越来越拟真的效果。 建筑漫游动画是指为表现建筑以及建筑相关活动所产生的动画影片。它通常利用计算机软件来表现设计师的意图,让观众体验建筑的空间感受。建筑漫游动画一般根据建筑设计图纸在专业的计算机上制作出虚拟的建筑环境,有地理位置、建筑物外观、建筑物内部装修、园林景观、配套设施、人物、动物、自然现象如风、雨、雷鸣、日出日落、阴晴月缺等等都是动态地存在于建筑环境中,可以以任意角度浏览。房地产动画应用最广的是房地产开发商对房产项目的广告宣传、工程投标、建设项目审批、环境介绍、古建筑保护、古建筑复原等。 建筑漫游动画就是将“虚拟现实”技术应用在城市规划、建筑设计等领域。近几年,建筑漫游动画在国内外已经得到了越来越多的应用,其前所未有的人机交互性、真实建筑空间感、大面积三维地形仿真等特性,都是传统方式所无法比拟的。 在建筑漫游动画应用中,人们能够在一个虚拟的三维环境中,用动态交互的方式对未来的建筑或城区进行身临其境的全方位的审视:可以从任意角度、距离和精细程度观察场景;可以选择并自由切换多种运动模式,如:行走、驾驶、飞翔等,并可以自由控制浏览的路线。而且,在漫游过程中,还可以实现多种设计方案、多种环境效果的实时切换比较。能够给用户带来强烈、逼真的感官冲击,获得身临其境的体验。 表现手法编辑 1.是现实性的这一类主要追求是真实尽量贴近现实生活。 2.是建筑性的这一类主要是用来体现建筑师在设计某一座建筑的创作——构想——设计——完成的过程,这种表现可以不需要蓝色的天、很宽的地、很多的人和车也不需要很多的环境
虚拟校园漫游系统的设计与开发
学院 : 信息与电子工程学院 专业 : 教育技术学___ 班级 : __ A2_____ 学号 : ___ 学生姓名: _____ 指导教师: _____ 论文题目:虚拟校园漫游系统的设计与开发
承诺书 我谨在此郑重承诺: 本毕业设计(论文)是本人在指导老师指导下,独立撰写完成的。凡涉及他人观点和材料,均依著作规范作了注释。如有抄袭或其他违反知识产权的情况,我愿接受学校处分。 承诺人(签名):
摘要 虚拟校园是基于地理信息技术、虚拟现实技术和计算机网络技术等高新技术,将校园地理信息和其他校园信息相结合,以虚拟现实场景界面实现校园景观及信息的浏览查询,并可上载到计算机网络和提供远程用户访问。虚拟校园提供了校园景观及设施最直观的表现形式,方便了用户对校园信息的访问,促进了大学的建设和远程教学的发展。建立简单易行的现实感强的虚拟校园漫游便成为对大学校园虚拟化的目标。而VRML和3D MAX等相关软件也为虚拟校园提供了技术上的支持。 本文的研究目的是设计并开发一个虚拟校园漫游系统,作者通过阅读大量国内外相关文献资料,深入地研究了虚拟现实技术和现有构造三维场景的语言,在此基础上,确定了基于VRML及浏览器插件技术的虚拟现实系统架构方案。 首先,以虚拟场景构造的流程为线索,采用3Dstudio Max和VRMLPad实现虚拟场景对象的建模;针对建筑物建模的复杂度和真实感问题,提出了建筑物二次建模方法; 其次,探讨了虚拟校园场景的交互。在此基础上实现了视点控制和动画交互。 第三,在系统设计开发的末尾阶段,讨论对虚拟校园漫游系统的优化方法。通过碰撞检测、层次细节技术、纹理映射等技术方法优化系统。 除此之外,还探讨了系统的整体构架、系统的开发流程、模型纹理贴图以及纹理贴图对场景外观的巨大作用。最后综合以上研究工作,设计并实现了一个基于VRML技术的虚拟校园系统。 关键词:虚拟校园、虚拟现实(VR)、漫游、建模、纹理贴图、交互设计
基于三维全景技术的动态虚拟漫游系统
基于三维全景技术的动态虚拟漫游系统 摘要针对当前全景漫游系统存在的问题,自主研发一种基于三维全景技术的动态虚拟漫游系统。该系统利用先进的网络、数据库技术,提出一系列改进算法,建立动态数据模块,并对数据流程图中的各个模块进行描述;利用HTML5框架上开源的WebGL库文件,构建Ajax模式下的MVC设计模型;借助SqlServer 数据库,增加后台管理平台,从而能对本系统不断更新、维护。 关键词全景漫游;动态数据模块;MVC设计模型;SqlServer数据库 近年来,虚拟现实技术一直是计算机应用领域的研究热点,其特点是利用计算机多媒体技术系统中创建真实世界的仿真环境,通过计算机的硬件设备来模拟人体的视觉、听觉、味觉和触觉等真实感知,使参与者在其中产生与在真实环境中相同或相似的体验。根据人体的生理特点,在各种感知中视觉感知占80%,因此在虚拟现实技术的研究中,视觉的模拟占有十分重要的地位。 1 研究背景 基于视觉的虚拟现实技术主要分为两种:一种是基于三维几何模型建模技术(VRM),另一种是基于图像的全景绘制技术(IBR)。VRM在实时绘制时显然计算量大、制作周期长,再加上互联网网速的延迟,以及计算机本身硬件条件的限制,显得无能为力。IBR提供了较好的方法来解决这些难题,利用真实场景的图像作为虚拟场景的表示形式,真实地再现了真实场景的视觉信息,生成的场景视图的质量远远优于VRM。 目前,国内许多全景数字史馆建设往往采用特制的软件来实现,比较常用的国外软件有MGI photo suite、Pano2VR、Panorama Maker、Virtools、Ulead Cool 360等,国内也有一些比较好的全景处理软件,比如杰图的“造景师”、彩影以及中视典的vrp系列软件。 虽然直接使用商业软件能够比较简单、快速地制作出基于IBR的360全景,但是它们没有考虑现实情况中不断增长、实时更新的动态性问题。所以,本项目自主研发一种基于三维全景技术的动态虚拟漫游系统。 2 关键技术 全景漫游技术可以实现网络上的虚拟场景漫游,因其具有良好的交互性、沉浸性而受到众多用户的青睐。传统漫游技术如VRML、QuickTime、Flash等大多存在标准不一、插件依赖、封闭性、集成性差等问题,新兴的基于HTML5的全景漫游方案可以对以上问题进行缓解。 2.1 基于HTML5的全景漫游技术的实现原理
基于krpano 的全景漫游系统的实现
Krpano功能介绍 Krpano的所有标签如下: Crop属性的四个值:0 、0、50、50,表示在加载的图片的0,0位置起,宽50高50裁切出一个图片,供当前使用。也就是说,可以把好几个图标整合在一张图片上,使用时,调用Crop脚本函数,提供要切割的起始坐标,要切割图片的宽高。 parent属性设置插件的父插件名称 Krpano viewer的功能是十分强大和复杂的.本文只介绍系统所用到的几个比较重要的标签=、校园全景漫游的具体实现 2.1、将krpano viewer嵌入html网页 Krpa~o Viewer提供了swfkrpano.is脚本使用它可以很方
便地将krpano viewer嵌入html网页.其使用方法如下: 首先引人脚本文件: