1. 研究目的与意义(文献综述)
随着gis应用的深入,人们越来越多地要求从真三维空间(刘星等,2012)来处理问题。在应用要求较为强烈的部门如采矿、地质、石油等领域已率先发展专用的具有部分功能的三维gis,如nasa的world wind软件(卢海滨等,2009),但由于它们一般是针对自己的领域开发的,没有从理论上加以系统完整的研究,没有面向通用平台进行设计,因此具有较强的局限性。这是由现在的应用要求、数据获取手段及相关的计算机技术发展条件决定的。三维gis可以在庞大数据与相关技术的支持下,对现有的大多数分析功能以更加直观的可视化方式呈现给用户及相关工作人员。
在市场需要且相关技术成熟的情况下,三维领域的gis向多个方向发展。其中,宏观性强的三维球体(王金鑫,郑亚圣等,2015)在大区域范围下模拟操作更加直观、可视化效果更明显。
现今市场上炙手可热的数码产品应用到了gis在三维球体方向的构建与开发,如谷歌地球及其相关的一系列api给用户带来方便快捷的信息获取,skyline等二次开发的产品让信息产业给三维gis不断提供动力,同时地理国情普查(史文中,秦昆等,2012)等大型国家项目也需要在大尺度上去反映地理上的统计信息,以达到普查的真正意义。以上的科技成果皆来自己于三维球体在c/s端所发挥的光与热。
2. 研究的基本内容与方案
三维可视化展示模块是在互联网上实现B/S 结构下的基于Web三维球体的数据产品展示平台。拟采用原生于HTML5中WebGL三维渲染技术(王若思,李传荣等,2014),通过为HTML5 Canvas组件提供硬件3D加速渲染来构建Web三维球体基础显示框架,同时借助系统显卡来在浏览器里展示更为流畅、更加精细的三维场景和模型,同时创建复杂的导航和数据视觉化。在基于数据匹配等算法支持下,采用WebGL多重纹理技术,平台实现了在浏览器端三维地球环境下栅格数据的加载叠加。栅格数据的加载不仅能够展示遥感底图和基础地理信息数据,还可以为林地分布、公益林生态林分布、森林分布、林地保护等级、林地权属分布等林地专题成果数据的加载提供支持。 基于HTML5标准中原生的Canvas技术以及三维地球的姿态参数控制,项目实现了浏览器端三维地球环境下矢量数据的加载和展示。利用地图瓦片和WebGL渲染技术,平台将存储在分布式数据库(姚文琳,王存刚等,2010)中的遥感影像进行发布,即将已切片的数据重新组织,发布成相关的地图服务,用户可对其进行加载、浏览、缩放及其他操作,并可以将其他的三维模型数据、DEM高程数据、纹理数据等进行叠加显示来构建简单的三维精细场景。基于WebGL的三维可视化平台提供对时间流数据的三维动画功能,实现各种地理空间数据在三维地球体上的可视化和动画定制。相对于现有的Web交互式三维动画,本项目完美地解决了两个问题:第一,它通过HTML脚本本身实现Web交互式三维动画的制作,无需任何浏览器插件支持;第二,它利用底层的图形硬件加速功能进行的图形渲染,是通过统一的、标准的、跨平台的OpenGL接口实现的。 三维可视化展示模块提供了林地数据成果的加载显示、Web交互查询、三维漫游、三维地形构建、简单的分析处理等功能,具体功能描述如下。 数据查询加载,以遥感为底图,主要实现对多源数据与产品进行查询加载与浏览的功能。主要包括遥感底图数据、基础地理信息数据、林地落界数据和其它数据等。其中的查询模块对三维林地成果有关的信息查询具有多种形式。按查询内容可分为模型查属性和属性查模型;按查询方式有简单查询、组合查询、模糊查询和自定义查询等几种;按查询要素的时间分布状况可分为现状查询和历史查询。该查询模块主要分三种方式查询:通过属性条件进行查询和定位,如简单查询定位;查询各种林地成果和其他物体的相关信息;查询出对应的模型物体并进行定位显示;通过几何立体对象的基本属性定位出对应的三维模型,并居中显示;根据模型物体的地址、名称等信息进行查询定位;根据其它常用信息进行查询定位;提供索引定位功能,将三维模型和属性表有效的结合,并能通过属性表的数据项进行对应三维模型的定位;自定义查询,用户可根据任意条件查询出满足条件的结果。这种查询方式较为专业,适合技术层次较高的用户。平面地图和三维地图上直接选取查询:通过在平面和三维图上点取相应的位置查询对应的所有属性信息。通过选取空间范围查询。指定一定的用地范围进行查询,将查询的结果保存,在新的图层上显示。查询的内容可以与以上相同。 三维漫游功能模块,此模块主要实现用户对三维视图的交互操作。三维漫游全景,是指将摄像机拍摄的水平方向360度,垂直方向180度的多张照片拼接成一张全景图像,然后利用得到的全景图像,采用计算机图形图像技术(魏少峰,张威,2012,)构建出全景空间,让使用者能用鼠标控制浏览的方向,可左可右、可上可下观看物体或场景。与传统的三维建模技术相比,三维全景具有制作简单,数据量小,系统要求低等优点,同时三维全景采用的真实场景的图像,因此比三维建模技术构建的场景更具真实感。该模块主要包括视图缩放、视图平移、地球自转、全图显示、放大缩小、升降效果、平移操作、旋转操作、视点选择、视野选择、维度选择、漫游、对象高亮显示、对象属性显示等功能。 三维地形构建基于林地成果的可视化数据。而可视化数据包括图像栅格数据、地理要素矢量数据和文字符号标注数据等多种类型数据,它们之间的叠加以地理坐标为基础。要制作林地成果三维地形影像,必须做到不同数据间的坐标匹配,目的是将不同来源的数据转换到同一坐标系中。在构建前会先设定一个参考坐标系作为配准依据,而后将其他数据转换到该地理坐标系中。DEM是由数字化地形图上的等高线和高程点生成的,在对地形图进行矢量化之前,利用相关软件进行地形图的校准,从而建立坐标系统。遥感影像的几何精校正完成了投影坐标的转换,实现了图像与DEM的配准,使遥感影像与DEM具有相同的投影坐标系。地理要素和文字符号注记均是依据地形图内容而进行的特征数字化或文字符号注记,与地形图存于同一坐标系中,不需要重新配准。之后在Virtual GIS视窗中,通过加载DEM数据、栅格数据(图像数据)及矢量数据等数据即可得到一个真实的虚拟地理环境。借助Virtual GIS(Mehdi Mekni,2013)实现林区地形三维可视化的基本思想是以林区DEM显示真实地形,以实时的遥感影像为纹理贴于DEM之上,生成实时的三维地形图景。为使三维地形更加形象逼真,可设置DEM的拉伸比例,并增加或改变空中云雾、天空颜色等要素。 统计分析处理模块,实现对数据进行图素信息在线查询与统计分析的功能。主要包括矢量数据、栅格数据、图形统计、对比分析等功能。由于地形地貌是自然界最复杂的客观实体,很难用数学模型准确描述,特别是林区地形表面的地貌更是千变万化,不可能用统一的模型进行描述。遥感的出现能解决这一问题,由于遥感成像周期短、图像信息丰富,能真实地记录地表状况,成为三维地形仿真的主要数据源。将遥感影像作为纹理贴于三维地形表面,可大大提高林区三维地形仿真的精度和真实感。所以在对遥感底图的处理上,将通过辐射校正、几何校正、影像融合以及正射校正的方式实现对遥感数据的处理。而在对数据的统计分析方面,会建立相关模型引用相关公式以及时全面的了解和掌握数据变化的趋势以及统计量值。
|
4、三维可视化技术框架 (1)切片数据的组织和存取 1)Web墨卡托投影与切片编码方式 墨卡托(Mercator)投影,又名“等角正轴圆柱投影”,荷兰地图学家墨卡托(Mercator)在1569年拟定,假设地球被围在一个中空的圆柱里,其赤道与圆柱相接触,然后再假想地球中心有一盏灯,把球面上的图形投影到圆柱体上,再把圆柱体展开,这就是一幅标准纬线为零度(即赤道)的“墨卡托投影”绘制出的世界地图。Google Maps、Virtual Earth等网络地理所使用的地图投影,常被称作Web Mercator或Spherical Mercator,它与常规墨卡托投影的主要区别就是把地球模拟为球体而非椭球体。 Web墨卡托投影具有“等角特性”保证了方向和相互位置的正确性,“圆柱特性”保证了南北(纬线)和东西(经线)都是平行直线,并且相互垂直。而且经线间隔是相同的,纬线间隔从标准纬线(此处是赤道,也可能是其他纬线)向两级逐渐增大。但是,“等角”不可避免的带来的面积的巨大变形,特别是两极地区,明显的如格陵兰岛比实际面积扩大了许多。
图1 Web墨卡托投影的世界地图
上图中地图截取为正方形,对于构建影像金字塔(李建勋,沈冰等,2011)而言是十分有用的,所谓的影像金字塔是指金字塔的每一级的切片数目都是它的上一级的4倍,但每一级覆盖的区域是一致的。这也就意味着某一级中的每个像元在下一级中都会被4个像元所取代,也就是在横纵向两个维度上细节层次都变为原来的两倍。
图2 墨卡托投影影像金字塔
每一级的切片的编码方式通常都是从左上角(0,0)到右下角(2n-1,2n-1)。如果我们知道我们需要的切片的编码值,那么我们可以很容易的就能计算出上一级对应切片的编码值。以这种方式组织切片的切片集(通常每个切片的分辨率为256*256px)免费提供者还是很多的,比如OpenStreetMaps(提供了18级)、Bing Maps,还有Google Maps等。 2)ClipStack:切片存取实现 地球三维可视化的目的是为了显示一个虚拟的地球,并且可以将场景缩放到街景的级别。因此,我们需要显示的地图将会达到23个缩放级别——在最精细的缩放级别时切片数目将达到223 * 223。一个切片的大小一般为256 * 256px,同时每个像元占据32位大小,那么如果我们加载全部的切片将需要4 * 260 B的显存空间,这对于一般只有512M或者1G显存的电脑而言,显然是不可能做到的。 因此,我们实现了一种称为ClipStack的切片管理机制,在渲染过程中,以动态管理切片、缓存,实时进行查找的方式来加载最少的切片数目。 切片数据的大小一般为256 * 256 px,而一般电脑显示器的分辨率都不会超过2048 * 2048px,因此,对于具体视口内的地球体的显示所需要的切片数目不会超过8 * 8 的切片数。 所以我们我的处理方式的核心思想就是根据视点和缩放级别的变化实时更新获取视口显示所需要的8*8的切片,此外为了加快切片的更新效率,我们还设置了一个数组为每一级切片维护元数据信息,这样在更新数据时,可以主要更新元数据信息,而不是纹理信息,从而提高效率。
(2)三维数字地球模型构建 为了更好的对地球进行可视化,我们需要一种合适的方式来优化几何图形与ClipStack这一套纹理缓存机制()的映射,为此我们设计实现了一种称为“分段平面”(Segmented Plane)的绘制技术。“分段平面”本质上就是一个二维矩形网格,与ClipStack所缓存的纹理数据是可以进行一一映射的。 当进行渲染时,存储在顶点着色器中的“分段平面”的顶点数据将会根据当前的缩放级别和视点偏移被投影回三维地理坐标,也就是从墨卡托投影到地理空间坐标系的转换,从而得到目前视口所需要的部分地球体。
|
3. 研究计划与安排
2016.3.01-2016.3.10 撰写开题报告
2016.3.11-2016.3.28 整理相关技术文档,安装相关环境配置
2016.3.30-2016.4.4 程序编写与测试
4. 参考文献(12篇以上)
参考文献:
[1] 刘星,刘莹莹. 基于真三维gis 的地质构造模型与空间分析[j].地质学刊,北京,2012,36(3):274-279
[2] 卢海滨,郑文峰等. nasa world wind javasdk数字地球客户端开发[j].测绘科学,2009,34(3):168-171
课题毕业论文、开题报告、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。