三维地理信息平台介绍与比较

1  国外主流三维地理信息平台介绍

Google Earth和World Wind是两款优秀的网络维地球影像浏览器,它们的出现,打破了传统Web GIS的数据发布模式,为空间信息的快速发布提供了新的解决思路和技术手段 采用这种技术,客户端和服务器之间不是直接传输空间数据,而是传输影像图片和XML ( KML Key-hole Markup Language KML)文档,影像数据被预先按照不同比例尺分层分块生成图片,当用户请求数据时,服务器不需要实时生成数据,而是根据用户请求的范围和尺度,在服务器端选择预先生成好的图片,拼接成满足用户要求的范围,返回给用户 这种模式可以极大的降低服务器和网络带宽的负担,为较少发生变化的空间数据发布提供了一种新的思路和解决方案 同时,这种技术使人们和空间信急的交互方式发生着深刻的变革 从World Wide Web到Web Wide World的变化反映了人们同空间信息的交互方式正从的单间信息服务模式到互动式、协同式探索的方向发展 Google Earth和World Wind已经被大众广泛接受并逐渐

开始应用在各个领域。

Skyline 软件是利用航空影像 、卫星数据、数字高程模型和其它的2D或3D信息源,包括GIS数据集层等创建的一个交互式环境。它能够允许用户快速的融合数据、更新数据库,并且有效地支持大型数据库和实时信息流通讯技术,此系统还能够快速和实时地展现给用户3D地理空间影像。Skyline是独立于硬件之外、多平台、多功能一套软件系统。它包括TerraBuilder、TerraExplorer、TerraGate等一系列产品,是为用户提供影像数据、空间数据等三维数据服务的商业软件

 OSSIMPlanet同World Wind一样是开源软件, OSSIMPlanet注重GIS数据的分析处理,是一个非常完善的解决方案是一套完善的系统,用户可以基于其API进行开发;但是想要扩展它估计得读懂很多东西(譬如说OSSIMPlanet自己设计了一套消息机制),如果使用它做自己的产品的话,过于复杂,难度较大。

1.1.        Google Earth、World Wind、OSSIMPlanet以及Skyline平台对比

上述的四个平台功能强大,具有三维可视化的能力,采用了先进的流传输技术,但是又具有很多不同之处 :

1、背景和目标不同:Google Earth的开发者 Google是一个商业公司,具有强的商业性,它的客户端是面向大众的;World Wind 的开发者是NASA(美国国家航空航天局),NASA是一个科学组织,World Wind是面向科学家 研究工作者和学生群体;Skyline主要提供给行业用户使用, Skyline Globe Enterprise Solution是美国Skyline公司为网络运营三维地理信息提供的企业级解决方案。包括了Skyline整套软件工具,给客户提供一站式服务,并开放了所有的API,不论是在网络环境中还是单机应用,让用户能够根据自己的需求定制功能,建立个性化的三维地理信息系统。OssimPlanet是以开源的Open Scene Graph为基础,继承了OSG的场景数据管理结构且实现了与NASA World Wind类似的全球网格模型(图5-2),OSG基于C++语言,大量运用了C++模版技术,因而开发难度较大,在数据结构中主要运用树结构组织数据,用C++智能指针来实现数据的共享,用仿函数类(重载()操作符的C++类)实现事件映射。

2、费用不同:World Wind以及 OSSIMPlanet是完全免费的,Google Earth具有三个版本,其中包括免费的个人版,Plus版和Pro版 Plus版和Pro版每年分别要付 20 美元和 400 美元Google的免费版本被授权为个人使用,不能用于工作环境,而World Wind 没有任何限制 另外 World Wind 是完全开放的,用户可以修改 World Wind 软件本身,Google Earth 目前只开放了API(应用程序接口); Skyline软件因其价格昂贵,主要适合研究经费充足的用户(Skyline软件接口的颗粒度大,如果进行深入的开发则需要借助其他GIS平台或者直接从底层写起,Skyline底层的源代码对国内的用户开放程度不够,二次开打能力较弱),导致用户群范围较小。

3、数据源不同:Skyline具有强大空间信息展示功能,支持SDE服务,Oracle空间数据库等,能从多种途径获取空间数据;Google Earth使用商业卫星,主要来自DigitalGlobe公司的 (QuickBird 美国IKONOS及法国 SPOTS, 分辨率高,GoogleEarth只有地球的真彩色数据,但图层多而详细,如地势、边界、道路、铁路、水道、地震、火山、学校、教会、公园、加油站、高尔夫球场、犯罪统计等,北美地区数据比较全,World Wind不仅具有地球的影像数据,还包括月球、火星、金星、木星的数据,并且还具有集成其他星球数据的能力,World Wind 内建层有 Blue Marble 、Landsat 7 、SRTM 、NASA SVS、 MODIS 、GLOBE、USGS 等,每个图层的用途不同,所含的信息、分辨率也不同,另外只要是符合OGC WMS(Open GIS consortium web mapservice)即可成为World Wind的资料来源 World Wind支持导入Google Earth KML文件的插件 World Wind具有科学可视化 动画浏览器以及其他类型的卫星影像,其中有些数据每天更新,相比 Google Earth,World Wind的数据更全面,结构更开放。OSSIMPlanet涵盖的内容很全, GDAL+OSG支持绝大多数矢量、影像、模型文件。

4、初始大小不同:Google Earth软件下载大小为13MB,World Wind为62MB,这是因为Google Earth初始化为地球全景视图,用户浏览的高分辨率数据通过网络实时传输,而 World Wind 带有 50M 初始化数据,包括43个不同的地球视图、3个月球视图以及下载地区的地名数据,Google Earth地球视图是由不同时间的影像组合而成的,看上去有些斑块的感觉,但是Google尽量让用户感觉这个虚拟的地球与地球的真实场景一致,World Wind具有不同的视图,这些视图具有不同的目标,例如Blue Marble提供了不同季节的地球浏览,Landset提供了地球的假彩色图像,World Wind的不同视图可以单独使用也可以合并在一起使用。

5、缓存策略不同:World Wind把浏览的影像从NASA的服务器上按需要下载下来,缓存在本地,缓存文件可以直接看到,可以共享缓存,同时NASA已经有些打了包的数据供下载 一旦有了缓存数据,断开网络也可以使用World Wind,Google Earth相对来说缺乏缓存策略,这意味着它不断的更新用户想要获得的动态数据 ,虽然Google Earth共享缓存在技术上是可以实现的,但它的缓存最大限制为2GB,有限的缓存限制了共享缓存的能力 虽然 Google Earth KML2.1 引入了使用 Google Earth图像流传输技术和动态修改和缓存结果的元素,但是Google Earth的缓存仍然太小; skyline没有真正意义上的数据缓存策略,官方应该没有提供数据,数据由用户自己寻找,设计,并且组织在一起

6、处理图片不同:Google Earth 可以处理 PNC、Jpeg、tiff 和 gif 图片,其中PNG包括24bit和8bit以及透明彩色图片,World Wind对PNG图片的透明管理不如Google Earth完善,对于所有图像的透明度设置为开和关两项,基于KML的(Google Earth图层管理系统存储显示参数,包括显示顺序、透明度等,较之World Wind更加灵活。

7、操作系统支持的不同:Google Earth支持Windows 2000、 XP、 Mac OS X (10.4) 、Linux 操作系统,目前 World Wind 只支持 Windows 操作系统。

1.2.       Google Earth平台进行GIS开发的可行性和它的优缺点

由于Google Earth平台提供的技术支持,它完全可以进行GIS的开发。Google Earth平台进行GIS开发的可行性和它的优缺点

1.2.1. 优点

1、 Google Earth包含全球大部分地区的真彩色遥感影像,并根据用户观察视角不同即时发送给用户不同分辨率的图像 ,用户可以通过鼠标点击,拖拽来控制飞行高度、方向、角度,也可以通过点击导航板或键盘控制 Google Earth除了浏览的功能外,还具有量测功能包括位置量测、 高程量测、 距离量测和垂直跨大率(vertical exaggeration)调整。

2、Google Earth的三个突出特点:一是可以显示矢量数据地标,包括点、线 、面等几何类型;二是具有栅格图像叠加的功能,允许用户将本机上或从网上下载下来的地图图片叠加到Google Earth上, 并且可以调整图片的透明度,此功能可以方便用户进行深入的观察和分析;三是具有三维虚拟模型,提供了一些城市的三维模型,允许用户使用三维对象 但三维模型的表示能为远没有Google Earth地标灵活,Google Earth地标是Google Earth最吸引人的地方。

3、用户可以创建和分享地标,这给Google Earth带了很大的灵话性,也给Google Earth带来了更多的信息,每个人都可以在 Google Earth 上某个地点、线段、区域上定义自己的地标,加入自己的知识,并且用户可以发布和共享地标信息,这样,Google Earth就成为一个具有空间标识的信息载体,大量信息 以地标的形式集成到Google Earth上,这些地标内容丰富,包含文字解说 照片等信息 目前网络上已经有很多共享地标,用户可以直接下载,加入到自己的Google Earth软件 Google Earth 4 已经支持中文地标。

4、Google Earth 地标使用 KML 描述,KML 全称是 Keyhole Markup Language ,KML是一个基于KML语法和文件格式的文件,用来描述和保存地理信息并在Google Earth客户端之中显示.。

1.2.2.缺点

虽然Google Earth提供了GIS的功能和影像地图,并让人们感受全民 GIS 的感觉,但 Google Earth 毕竟不是专业 GIS 软件,以后他可能会走专业GIS的道路但至少现在不是,它不能满足专业GIS所特有的地理信息功能。

1、Google Earth不具备GIS的数据采集与编辑功能

2、Google Earth不具备GIS的制图功能 GIS可以提供矢量地图和栅格地图,可以根据用户的需求分层数据各种专题地图,还可以通过空间分析得到一些特殊的地学分析用图,如坡度图、坡向图、剖面图等等。

3、Google Earth不具备空间查询与空间分析功能 专业的 GIS 空间查询与空间分析功能的包括拓扑空间查询、缓冲区分析、叠置分析、空间集合分析、地学分析、数字高程模型的建立 地形分析等。

1.3.        World Wind 进行GIS开发的可行性和它的优缺点

由于World Wind平台提供的技术支持,它完全可以进行GIS的开发。World Wind的软件架构应该来说还是很不错的。开放的设计,使得World wind的扩展非常方便和快捷,目前已有上百种各式各样的插件,很多插件都很有意思和实用。使用.net和java,研究它的工作原理变的相对容易。 相对来说.net版本的容易深入些。java版的严格面向对象方法的使用,使得java版的精简,但深入起来不如.net容易。 World Wind的国内应用的典型代表是EV-Globe,EV-Globe基于World Wind平台,改善了其缺陷并发扬World Wind的优势

1.3.1. 优点

1、World Wind是个开放软件,允许用户修改 World Wind 软件本身。软件用 C# 编写,调用微软 SQL Server 影像库 Terrain Server 来进行全球地形三维显示,低分辨率的Blue marble数据包含的初始安装内,当用户放大到特定区域时,附加的高分辨率数据将会自动从NASA服务器上下载。 它通过将遥感影像与SRTM高程(航天飞机雷达地形阁数据库)叠加生成三维地形在功能方面,软件终有长度测量(仅能测星两点间直线距离)、 坐标和高程查询、 屏幕裁图、 添加标注及三维动态显示等功能。

2、World Wind最大的特性是卫星数据的自动更新能力。这种能力使得World Wind具有在世界范围内跟踪近期事件、 天气变化、 火灾等情况的能力。 NASA已经提供了一系列演示动画,模拟全球飓风动态、 季节变迁等全球活动。 World Wind可以通过软件接口直接播放动画,也可以显示Google数据,例如用户指定时间范围的气温、 云量、 降水等数据。World Wind包含全部的国界、 城市、 交通、 经纬线和其他参考测层,还具有接受来自GPS接收机的数据并将其坐标显示在三维地球上的能力。

3、World Wind允许用户设置缓存大小并且允许用户改变图像存储位置。 同一个缓存可以被多个计算机共享,局域网上的用户可以从缓存内的提取信息,减少局域网到Internet 上的流量。World wind 提供直接下载DDS和JPEG卫星图片的能力。

1.3.2.缺点

1、速度慢。几个原因导致world wind在实际使用中存在速度慢的问题.
            a)影像数据组织混乱。由于world wind在系统设计时面向的就是各个行业各种数据的集成。因此他设计时的兼容,导致同一地区数据获取重复(占内存资源)、不同数据获取服务器速度不一致影响。
            b)c#异常。捕获异常占用了world wind大部分时间。导致显示、数据获取时严重的停顿。
            c)SRTM的动态生成。如果你想像取图工具一样把SRTM下载下来,那简直不可能。
            d)Queue Download实际运作时,一旦出现异常和错误,将导致数据下载停顿。需要重新调整视角。而貌似多线程的下载,实际效果并不明显。这就导致显示出现停顿。

e)地图的质量问题,就普通地貌来说,大致与Google Earth的大致相同,Google Earth的普通地貌放大到12-13级。能分辨山脉河流、湖泊等大的地标; World Wind 基本上也是如此,从0级放大到4级(共5级),但是这是 World Wind 除美国地区以外的最高分辨级别了,只可以用于对大致地貌的了解(结合在线的资料库,World Wind最高的解析度达到每象素代表15公尺)。不像Google Earth那样对地级以上的城市放置的更大级别(高达20级)的详细地图。这是 World Wind 不如Google Earth的最大区别。

F) World Wind 自身还有很多的BUG,比如系统无优化代码,占用CPU较高,存在进程锁死的问题,下载速度很慢。这些对于一般用户都是很不友好的缺点,常常会出现一些显示方面的故障。

2、三维支持能力稍差。尤其是在模型的支持方面,虽然有个Model Feature类来进行三维显示。这里有问题:
          a)不支持LOD,虽然.x文件设计时能支持,不过显然Model Feature不支持。
          b)模型显示漂移。当你放大到最详细时,会发现模型左右上下晃动。
          c)模型未按tile形式组织。Cache、内存、释放等方式都存在问题。

3、World Wind的矢量处理显示类比较混乱,效果也不是太好。

4、通过一个插件能够支持KML,不过想达到Google Earth的添加等功能,还需要做很多工作。

5、内存泄露。按理,c#不会存在内存泄露。出现问题的地方是QuadTile.Dispose,D3D的纹理没有进行清除。使得资源占用越来越大,速度越来越慢

6、DEM显示缺陷,每个Tile之间未作平滑处理,经常会出现深坑、断档。

7、影像黑边,大多数基于World Wind的软件,可以看到影像边缘很明显的黑边、 锯齿。究其原因,是jpg压缩,出现黑色渗透交融导致黑边锯齿。

1.4.       OSSIMPlanet进行GIS开发的可行性和它的优缺点

国内有采用OSG以及基于OSG开发的数字地球,参考了ossimplanet但未直接使用。

1.4.1.              优点

1、基于OSG(Open Scene Graph),一个很庞大很成熟的开源软件。国内很多公司采用,如西安赛能。地址:http://www.3snews.net/html/71/www.openscenegraph.org

2、平滑快速高效的显示效果。

3、作为平台来说,他涵盖的内容很全,GDAL+OSG支持绝大多数矢量、影像、模型文件。

4、完美的模型支持。

5、专业化。

6、脚本支持。通过采用OSG的osgInterper,能快速绑定Python,Lua,JavaScript,Ruby。

1.4.2. 缺点

1、基于c++。光研究了解它就要花好多成本,这并不太适合国内公司和单位。门槛高,时间长,见效慢。
    2、相关资料少。它涉及到太多的大型开源库,而国内翻译的资料相对少很多。

从技术角度来讲,OSSIMPlanet的缺陷几乎没有。但如上所述,想基于它形成自己的产品和解决方案,要投入大量的人力和物力。因此它的硬伤就是,不适合商业化。

1.5.       Skyline进行GIS开发的可行性和它的优缺点

1.5.1. 优点

1、Skyline 具有强大空间信息存储和管理能力,支持 ArcSDE 服务,连接 Oracle 空间数据库等,能从多种途径存取和获取空间数据。

2、Skyline具有强大空间信息展示功能,支持交互式绘图工具,提供三维测量及地形分析工具,但缺少淹没分析、填挖方分析等实用功能。

3、Skyline 是基于微软公司的 COM 技术进行底层开发,全组件式结构,为系统的后期的无缝升级、以及用户的二次开发提供了良好基础;支持 OPENGL 与 DirectX,充分的利用了硬件的 3D 加速性能。

1.5.2. 缺点

1、Skyline为三维地理信息提供企业级解决方案,可以方便的搭建三维GIS系统,但快速搭建的不足是给开发人员的开发空间较小,各种功能的封装度较高。

2、对二维GIS组件的支持Skyline仍然需要切换到后台利用二维GIS的功能。

2 国内主流三维地理信息平台介绍

2.1. EV-Globe

EV-Globe是北京国遥新天地信息技术有限公司开发的三维海量空间信息平台。自推出以来,就广泛应用于安全监督和管理、指挥调度、资源开发整合、资源综合利用、环境保护检查等领域。EV-Globe基于组件式开发,所有功能以控件或类的方式封装在dll中,用户可以很方便进行各种功能定制,甚至将EV-Globe嵌入各类信息系统中。EV-Globe具备在普通PC机上就能实现的海量三维模型和影像流畅地进行各项漫游操作的功能。此外在EV-Globe服务器端,用户可根据需要绑定常规GIS平台如SuperMap,ArcGIS等。EV-Globe具有大范围的、海量的、多源的数据一体化管理和快速三维实时漫游功能,支持三维空间查询、分析和运算,可与常规GIS软件集成,可方便快速构建三维空间信息服务系统,亦可快速在二维GIS系统完成向三维的扩展。EV-Globe提供距离测量、线段剖面、折线剖面、区域淹没、通视分析等三维GIS特色的空间分析功能。EV-Globe在海量数据浏览效率、矢量数据的查询、三维分析功能、安全性等方面相比国内其他同类产品也有着较为明显的优势。

2.2. GeoGlobe

2006年4月武汉武大吉奥公司推出了网络环境下全球海量无缝空间数据组织、管理与可视化软件——GeoGlobe,该软件是由武汉大学测绘遥感信息工程国家重点实验室研发的。GeoGlobe包括三部分:GeoGlobe Server、GeoGlobe Builder和GeoGlobe Viewer。GeoGlobe Server通过分布式空间数据引擎,管理所有注册的空间数据,并提供实时多源空间数据的服务功能。GeoGlobe Builder 实现对海量影像数据、地形数据和三维城市模型数据的高效多级多层组织,为实现全球无级连续可视化提供数据基础。GeoGlobe Viewer则装在客户端,通过网络获取服务器端数据,三维实时显示、查询、分析。GeoGlobe软件提供了的二次开发功能,用户可以根据应用的需要自行设计界面,调用所提供的动态库进行二次开发,应用十分方便。

  作为一款功能强大的桌面地球浏览器,自推出至今展现出了巨大的魅力,征服了无数用户。凭借着其强大技术实力、经验,为企业提供各种级别的解决方案,并取得了不俗的业绩,可以肯定未来GE在各个行业的应用广度、深度都潜力巨大。但是与Virtual Earth、World Wind一样,Google Earth都还不具备空间分析、大型数据库管理的功能。相比之下,全球在这一方面较为出色的是美国的软件Skyline和国内软件EV-Globe。

3 国内外三维地理信息平台对比

近些年,由于政府对空间信息产业的重视,加大投入,以及优秀人才的参与,国内空间信息技术取得了长足的进步。国内企业顺势推出的EV-Globe、GeoGlobe等优秀产品,虽然起步较晚,产品结构框架还不太完整,在海量数据处理能力、三维建模、三维分析、跨平台通信、二次开发支持等方面,相比国外软件也有一定的差距。但是,国产软件基于国内客户需求而研发的先天性,提供的空间信息化解决方案可能更适合国内客户;再者,国产三维地理信息软件具有更高的安全性,不仅适合国内大型企业、单位应用,而且能更方便地为各行业的特定需求开发提供底层技术支持,扩展性能更为强大;此外,国产三维软件在海量数据的快速浏览、矢量数据的查询和分析等功能方面也领逐步增强,甚至显现出优于国外软件的趋势。另外,较高的性价比也是国产软件最为明显的优势之一。

  三维GIS作为GIS的一个重要发展方向,其研究范围涉及数据库、计算机图形学、虚拟现实等多门科学领域。目前,国内外许多学者对三维GIS的三维结构、三维建模以及单一领域的应用提出了多种方法和技术手段。现有的三维GIS,例如前面提到的Google Earth、Skyline等,在三维场景可视化、实时漫游等系统功能方面取得了较好的成果,但是在空间数据的复杂分析与决策支持方面的能力还较弱,三维空间信息的网络化与标准化等问题也有待进一步深化和完善。通过与虚拟现实、人工智能等技术的结合应用,三维GIS能更加真实、生动地表现现实世界,为我们更好地洞察和理解现实世界提供了更多样的选择。总之,三维信息技术在各行业的应用已经取得了令人瞩目的成就,但是一切还只是开端。

posted @ 2012-06-25 11:43  水石.重阳  阅读(3958)  评论(0编辑  收藏  举报