基于WebGL的三维点云可视化研究
2017-12-19王成雷连懿曾晓明何龙崔铁军杜鹏陈鹏飞
王成雷+连懿+曾晓明+何龙+崔铁军+杜鹏+陈鹏飞
摘 要:随着倾斜摄影测量和Lidar广泛应用,三维点云成为地理空间数据的重要数据种类。海量的三维点云数据一直是WebGIS可视化发布的难点。文章基于WebGL框架,研究了三维点云数据切片分级等数据组织方法,并开发了相应软件。对利用倾斜摄影测量所建立的三维点云数据进行处理,在自主开发的WebGL客户端上实现了数据三维点云的实时可视化浏览。
关键词:海量点云;WebGL;可视化;四叉树
中图分类号:P208 文献标志码:A 文章编号:2095-2945(2017)35-0041-02
1 概述
随着网络技术、计算机图形技术以及空间三维建模技术的进步,大大扩展了三维信息数据的应用领域,并促进了相应领域的良好发展。三维信息数据不仅记录了物体在空间中的三维信息而且还记录了物体表面的几何信息,能够更加直观、更加真实的显示和认识客观世界对象。通过利用这些信息,就可以对物体的三维形态进行相应的构建和分析,在实际的应用当中可以多角度的去观察三维地物,获得更加详尽的地物信息。
目前三维信息数据的获取主要是通过三维激光扫描、航天航空摄影等技术获取海量的点云数据的形式。在三维数字建模过程中,这些点云数据可以精确地反应物体的三维空间信息和表面的幾何信息,拥有二维图像所无法比拟的优势。但是我们通过测量获取的点云数据量和密度都非常庞大,这使点云数据在储存、传输和显示上带来了一定的难度。要实现海量三维点云可视化就要解决海量数据带来的问题,选择一种快速、高效的数据组织形式就显得尤为重要。本文中先运用了基于TIN模型的边折叠简化方法对点云数据进行了简化。然后以四叉树模型为基础,对海量的数据进行分层分块组织,建立基于四叉树的LOD模型。
本文采用倾斜摄影测量技术获取了天津师范大学研究区的三维点云数据,并建立了相应的三维数字模型,同时对数据进行了三角网简化和相应的切片处理。在此基础上结合HTML5和WebGL技术,搭建三维WebGIS数据服务平台,实现了三维点云数据可视化,有效的解决了传统三维GIS中存在的插件依赖性、私有性、跨平台性差等缺陷问题。
2 三维空间数据组织
2.1 基于边折叠方法的三角网简化
三角网模型简化不是简单地减少模型中三角形面片的数目,而是在尽可能保持原始模型特征的情况下,最大限度地减少原始模型的三角形和顶点的数目。TIN 模型的简化有顶点删除简化法、边折叠简化法和三角形折叠简化法。研究中综合运算效率和简化精度考虑,最终选择边折叠简化法。
边折叠简化操作是将一条满足条件的边(p1,p2)简化成一个顶点p,然后让与该边两个端点相邻的每个顶点都和新顶点相连,同时删除所有退化的边和三角面。假定简化从原始网格Tn开始,进行一系列边折叠操作,就会得到满足要求的简化网格Tg。由于每一次边折叠操作都会对当前模型进行一次修改,所以该算法实际上生成了一系列模型Tn,Tn-1,…,Tg。因此,经过这样一系列简化,就会生成大量的逼近模型或者是说类似于渐进网格的层次细节表示。
2.2 基于四叉树的海量点云数据组织
数据的组织方式直接影响点云数据的操作速度,要实现快速、高效的数据可视化,就要选择一种相对高效的海量点云的组织方法。目前在对点云数据的组织与管理中常见的组织方式有规则格网、四叉树、KD树、KDB树、BSP树和R树等。其中四叉树作为一种最常见的空间索引,易于实现,具有较好的可操作性,更加适合用于海量点云数据组织。
采用四叉树细节层次模型时,从整个完整的地形出发,对地形不断的进行分割,每次分割成大小相等的四个区域,分割的层次越深,则得到的分辨率越高,上一层的节点精度是下一层的一半。
3 三维空间数据的网络发布
3.1 WebGL技术
WebGL是一种3D绘图标准。第一,它通过JavaScript脚本实现Web交互式三维动画的制作,无需任何浏览器插件支持;第二,它利用底层的图形硬件加速功能进行的图形渲染,是通过统一的、标准的、跨平台的OpenGL接口实现的。WebGL技术不仅免去了开发网页专用渲染插件的麻烦,还可创建更复杂3D结构。
3.2 基于WebGL技术的三维可视化
在实现了数据采集和预处理的基础上,服务端的主要研发工作在于三维点云数据的管理,以及Web服务器的搭建。其中应用服务器部署的主要参数为:操作系统是Windows Server R2 Enterprise系统,CPU采用2颗Intel Xeon X5650 CPU,内存64G,开发环境为Visual Studio,并最终用IIS提供web服务和文件服务发布网页和缓存数据。
在客户端方面采用HTML5+JavaScript+CSS3的Web前端技术,结合WebGL标准进行开发。在运行环境的选择上,主要是保证浏览器和显卡对WebGL的支持,要确保浏览器为最新版本并完成可能需要的设置,以确保其支持WebGL标准。
在三维点云数据可视化服务环境部署完成的基础上,就可以实施发布基于WebGL的三维数据可视化系统。发布成功后界面如图1所示。运用该系统进行三维数据浏览过程中,三维模型加载流畅迅速,模型无任何异常,树木、汽车等均清晰可见。运用鼠标的按键和滚轮可以对模型中任一区域进行多角度的可视化浏览,展现了系统的友好交互能力,实现了海量三维点云数据的可视化。
4 结束语
三维GIS是当前GIS中最受关注的一个方向,如何把海量的基础地理数据和地理信息准确、生动的表达出来,如何满足用户的多维性与交互性需求一直是需要不断探索的问题。倾斜摄影测量技术与WebGL技术的友好结合,正好有效的解决了传统三维GIS中存在的插件依赖性、私有性、跨平台性差等缺陷问题。利用倾斜摄影测量技术和WebGL技术建立和发布了一个高性能的网络交互式三维模型数据可视化平台,能更加精准、友好的实现三维数据的可视化,对推进完善“智慧城市”的建设起到了巨大的促进作用。
参考文献:
[1]王德生.基于HTML5和WebGL的三维WebGIS系统构建及应用[D].福建:福建师范大学,2014:1-15.
[2]李婕.三维海量激光数据管理及可视化研究[D].北京:首都师范大学,2009.
[3]支晓栋,林宗坚,苏国中,等.基于改进四叉树的LiDAR点云数据组织研究[J].计算机工程与应用,2010,46(9):71-74.
[4]曾 .基于WebGL的机载激光雷达点云数据可视化[J].湖南科技大学学报,2012,27(4):60-63.
[5]李现民.三角网格简化及等值面抽取技术[D].北京:中国科学院,2001:10-12.endprint