目前國際上著名的地理空間信息生產(chǎn)商大都擁有了成熟的產(chǎn)品線, 基本涵蓋了從數(shù)據(jù)采集、數(shù)據(jù)編輯、數(shù)據(jù)管理、空間數(shù)據(jù)互操作、空間分析到網(wǎng)絡(luò)地理信息服務(wù)注冊、發(fā)布、聚合等所有地理信息工程相關(guān)的功能模塊 。有時候,在商業(yè)軟件價格比較昂貴的情況下,使用開源WebGIS也是一個不錯的選擇。
一套WebGIS架構(gòu)方案包含以下三個部分:
地理信息數(shù)據(jù)庫和業(yè)務(wù)數(shù)據(jù)庫:地理信息數(shù)據(jù)庫用于存儲地理信息數(shù)據(jù)(包含矢量、地名地址、專題及瓦片數(shù)據(jù));業(yè)務(wù)數(shù)據(jù)庫用于存儲前端網(wǎng)站或者行業(yè)應(yīng)用的關(guān)系型數(shù)據(jù);
GIS服務(wù)器: GIS服務(wù)器則用于提供WMS、WTMS、WFS和WCS等GIS服務(wù);
Web應(yīng)用服務(wù)器: Web應(yīng)用服務(wù)器主要針對行業(yè)應(yīng)用,用于調(diào)取GIS服務(wù)和后臺的業(yè)務(wù)數(shù)據(jù),并在前端展示;Web應(yīng)用服務(wù)器提供Web信息瀏覽服務(wù),通常你看到的是一個網(wǎng)站。
針對WebGIS以上組成部分,一套開源WebGIS有著相應(yīng)的解決方案,其架構(gòu)方式如下 :
數(shù)據(jù)生產(chǎn)(桌面軟件--uDig、QGIS等)
數(shù)據(jù)存儲(關(guān)系型或非關(guān)系型數(shù)據(jù)庫:postgreSQL、mySQL、mongodb)
GIS服務(wù)(GIS服務(wù)器:mapserver、Geoserver)
Web服務(wù)(Web服務(wù)器:tomcat、apache、nginx)
前端渲染(OpenLayers )
當(dāng)然還需要提供這一整套架構(gòu)方式的外圍軟件環(huán)境:
虛擬化或者云環(huán)境(StarVcenter、VirtualBox、OpenStack、docker:StarVcenter做私有云相當(dāng)不錯的)
操作系統(tǒng)(linux:CentOS、Ubuntu)
//
地圖數(shù)據(jù)生產(chǎn):使用uDig、QGIS、Grass等開源桌面GIS軟件采集、加工地理信息數(shù)據(jù)
uDig:http://udig.refractions.net/
Grass:https://grass.osgeo.org/
OpenEV:http://openev.sourceforge.net/
gvSIG :http://www.gvsig.com/
OpenJUMP:http://www.openjump.org/
OSSIM:http://trac.osgeo.org/ossim/
InterImage:http://www.lvc.ele.puc-rio.br/projects/interimage/(專注影像解譯)
PolSARPro:https://earth.esa.int/web/polsarpro(極化雷達處理)
E-foto:http://www.efoto.eng.uerj.br/en 航空攝影測量
地理信息數(shù)據(jù)存儲:關(guān)系型數(shù)據(jù)使用PostGIS或MySQL Spatial數(shù)據(jù)庫存儲地理信息數(shù)據(jù)和關(guān)系型業(yè)務(wù)數(shù)據(jù),
非關(guān)系型數(shù)據(jù)使用mongodb、HBase數(shù)據(jù)庫(瓦片、圖像)
PostGIS:http://postgis.net/
PostgreSQL:https://www.postgresql.org/
MySQL:https://www.mysql.com
mongodb : https://www.mongodb.com/
HBase:https://hbase.apache.org/
rasdaman:http://www.rasdaman.org/ (柵格數(shù)據(jù)庫)
SpatiaLite:http://www.gaia-gis.it/gaia-sins/ (輕量級數(shù)據(jù)庫SQLite空間擴展)
//
GIS服務(wù)器:使用GeoServer、MapServer生產(chǎn)地圖瓦片,注冊、發(fā)布地理信息服務(wù)。
GeoServer:http://geoserver.org/
MapServer:http://mapserver.org/
Mapnik:http://mapnik.org/
TileCache:http://tilecache.org/
MapTiler:https://www.maptiler.com/
Web服務(wù)器應(yīng)用:使用Geomajas、Tomcat或apache搭建網(wǎng)站,在網(wǎng)頁中嵌入地圖容器加載地圖;使用nginx作為反向代理或者負(fù)載均衡。
Tomcat:http://tomcat.apache.org/ (網(wǎng)站服務(wù)器)
apache:https://www.apache.org/(apache即可做網(wǎng)站服務(wù)器,又可作反向代理、負(fù)載均衡)
nginx: http://nginx.org/ (負(fù)載均衡、反向代理)
地圖網(wǎng)站專用服務(wù)器
GeoMoose:https://demo.geomoose.org/
Geomajas:http://www.geomajas.org/
///
個人客戶端或者web應(yīng)用服務(wù)器的前端展示:地理信息服務(wù)使用支持Javascript的Openlayers、Leaflet、 Mapbox 等地圖容器前端展示。前端其他數(shù)據(jù)展示使用Javascript、vue等流行網(wǎng)頁API。
openlayers(Javascript): http://openlayers.org/
LeafLet:https://leafletjs.com
Mapbox :https://www.mapbox.com/
注:這里的web應(yīng)用服務(wù)器相對于GIS服務(wù)器而言是客戶端,相對于瀏覽者而言是服務(wù)器。
/
以上給出使用開源軟件實現(xiàn)WebGIS各個環(huán)節(jié)可采用的軟件,在實際項目中,應(yīng)根據(jù)項目需要做一下篩選。
比如:uDig (QGIS)+ PostgreSQL/PostGIS (mongodb)+ GeoServer + Tomcat +Openlayers組合。
倘若有高性能、高可用的需求,還應(yīng)使用集群技術(shù)(cluster),搭建數(shù)據(jù)庫集群、GIS服務(wù)器集群和web應(yīng)用服務(wù)器集群生態(tài),增加服務(wù)的冗余,提高服務(wù)性能,畢竟地圖服務(wù)不是簡單的網(wǎng)頁服務(wù),其消耗的資源是非常大的,即便是一個空間查詢語句,對數(shù)據(jù)庫的性能消耗也是非常可觀的。當(dāng)然,集群技術(shù)還有軟、硬件層次的分布式、負(fù)載均衡、網(wǎng)絡(luò)、鏈路等多種組合方式。
注:網(wǎng)上很多文章喜歡把分布式和集群分開來看,其實這兩者只是描述多個網(wǎng)絡(luò)計算機節(jié)點的不同聚合狀態(tài)而已。以分散的角度看,可以將關(guān)聯(lián)在一起的多個網(wǎng)絡(luò)計算機看作是分布于不同角落的邊緣節(jié)點,以集中的角度看,可以將關(guān)聯(lián)在一起的多個網(wǎng)絡(luò)計算機節(jié)點看作是聚合在一起的節(jié)點聚落。
/
以下列出所有開源軟地理信息軟件或者商業(yè)地理信息軟件都可能有到的開源地理信息函數(shù)庫。其中,GDAL/ORG、PROJ.4、GEOS是地理信息軟件或者系統(tǒng)開發(fā)的三架馬車,它們搭建了地理信息軟件的基礎(chǔ)。
GDAL/OGR:https://gdal.org/ 開源柵格/矢量空間數(shù)據(jù)轉(zhuǎn)換庫
PROJ.4:https://proj.org/ 地圖投影庫
GEOS:http://trac.osgeo.org/geos 開源地理空間數(shù)據(jù)引擎
pyshp:https://pypi.org/project/pyshp/ 用于處理shapfile的簡單函數(shù)庫
Shapely:https://pypi.org/project/Shapely/ 基于 GEOS,用于操作和分析平面幾何對象的函數(shù)庫
Fiona:https://pypi.org/project/Fiona/ 基于GDAL,用于讀取空間矢量數(shù)據(jù)的函數(shù)庫
Rasterio:https://pypi.org/project/rasterio/ 基于GDAL和Numpy,用于讀取地理空間柵格數(shù)據(jù)的函數(shù)庫
PIL:https://pypi.org/project/PIL/ 用于處理影像的python庫
NumPy:https://pypi.org/project/numpy/ 用于矩陣科學(xué)計算的函數(shù)庫
Scikit-image:基于scipy的一款圖像處理python庫
GeoPandas:http://geopandas.org/ 用于空間分析的函數(shù)庫
SPy:http://www.spectralpython.net/ 用于高光譜遙感影像處理的python庫
GML4J:http://gml4j.sourceforge.net/ 用于讀取gml數(shù)據(jù)的函數(shù)庫
GSLIB:http://www.gslib.com/ 用于空間統(tǒng)計的函數(shù)庫
JTS:https://sourceforge.net/projects/jts-topo-suite/ (支持JAVA的空間分析包)
GeoTools:https://www.geotools.org/ (支持JAVA的地理處理工具箱)
GeoMesa:https://www.geomesa.org/ 分布式時空大數(shù)據(jù)分析工具,配合hadoop使用
/
開放網(wǎng)絡(luò)地圖引擎:
OSM:https://www.openstreetmap.org/ 地圖
Navit:https://www.navit-project.org/ 導(dǎo)航
/
開放三維引擎:
Cesium:https://cesium.com/
OSG earth:http://www.openscenegraph.org/
marble:https://marble.kde.org/
/
開放地理處理工具:
GeoTools:https://www.geotools.org/ 地理處理工具箱
GeoNetwork:https://geonetwork-opensource.org/ 網(wǎng)絡(luò)地圖查看和目錄工具
Orfeo ToolBox:https://www.orfeo-toolbox.org/ 可以處理TB級的高分辨率光學(xué),多光譜和雷達圖像。
//
開放協(xié)會或組織
https://www.osgeo.org/ 開源地理空間基金會
https://www.osgeo.cn/ 中國開放地理空間實驗室
https://www.opengeospatial.org/ OGC開放地理空間信息聯(lián)盟
///
加利福利亞大學(xué)熒光動力學(xué)實驗室python 庫:
https://www.lfd.uci.edu/~gohlke/pythonlibs/
//
也可參見grss-ieee地球科學(xué)與遙感學(xué)會與遙感相關(guān)的開源函數(shù)庫和軟件列表:
http://www.grss-ieee.org/open-source-software-related-to-geoscience-and-remote-sensing/
OSGeoLive 目錄:
http://live.osgeo.org/en/overview/overview.html
/
Web地圖服務(wù):
deegree http://www.deegree.org/
geomajas http://www.geomajas.org/
GeoServer http://geoserver.org/display/GEOS/Welcome
Mapbender http://www.mapbender.org/
MapBuilder http://communitymapbuilder.osgeo.org/
MapFish http://www.mapfish.org/
MapGuide Open Source http://mapguide.osgeo.org/
MapServer http://www.mapserver.org/
OpenLayers http://openlayers.org/
地理信息桌面軟件:
GRASS GIS http://grass.osgeo.org/
Quantum GIS http://www.qgis.org
gvSIG http://www.gvsig.org
地理信息函數(shù)庫:
GDAL/OGR http://www.gdal.org/
GEOS http://trac.osgeo.org/geos/
GeoTools http://www.geotools.org/
MetaCRS http://trac.osgeo.org/metacrs/
OSSIM http://www.ossim.org/
PostGIS http://www.postgis.org/
/
數(shù)字制圖和地理空間信息系統(tǒng)(Geographic Information System,GIS)的出現(xiàn)徹底改變了人們和對周圍世界思考、互動的方式。將位置信息分層重疊用于決策的概念首先是由 Ian McHarg(景觀設(shè)計師)在上世紀(jì)60年代提出。大約在同一時間,Roger Tomlinson —— 人們普遍稱之為“GIS 之父”(Father of GIS) 完成了他的博士論文,主要研究使用計算方法處理分層的地理空間信息。羅杰隨后致力于創(chuàng)建第一個計算機化的地理信息系統(tǒng)——加拿大地理信息系統(tǒng)(the Canada Geographic Information System),主要用于勘探測繪。
開源 GIS 的起源可以追溯到 1978 年的美國內(nèi)政部(U.S. Department of the Interior)。從那時起,開源 GIS 基于不同的知識產(chǎn)權(quán)許可證,深入影響到許多行業(yè)的發(fā)展,包括政府和商業(yè)領(lǐng)域。美國勞工部稱 GIS 技術(shù)為二十一世紀(jì)最重要的三大高增長產(chǎn)業(yè)之一。開源 GIS 技術(shù)在過去四十年的發(fā)展,直到今天演變出許多具有開創(chuàng)性和影響力的應(yīng)用。
GIS 的起源: MOSS and GRASS
1978年,美國內(nèi)政部創(chuàng)建了 MOSS 系統(tǒng)(the Map Overlay and Statistical System ,地圖疊加和統(tǒng)計系統(tǒng))。MOSS 系統(tǒng)主要用于跟蹤和評估礦山開發(fā)對環(huán)境、野生植物、野生動物及其遷徙方式的影響。這是第一個廣泛部署基于矢量(Vector Based)、可互動的地理信息系統(tǒng)。第一套 GIS 生產(chǎn)部署在小型機上。
隨后不久,GRASS (Geographic Resources Analysis Support System,地理資源分析支持系統(tǒng))誕生。GRASS 系統(tǒng)擁有 350 多個模塊用于處理柵格、拓?fù)湎蛄?、圖像和圖形數(shù)據(jù),該軟件最初設(shè)計提供給美國軍方使用,以協(xié)助土地管理和環(huán)境規(guī)劃。GRASS 系統(tǒng)廣泛應(yīng)用于科學(xué)研究和商業(yè)領(lǐng)域,包括地理空間數(shù)據(jù)管理和分析、圖像處理、空間和時間建模以及創(chuàng)建圖形和地圖。
GIS 的發(fā)展:GeoTools, GDAL, PostGIS 和 GeoServer
1996,利茲大學(xué)(the University of Leeds)在一個項目上開始創(chuàng)建基于 Java 開發(fā)語言的地理信息庫,設(shè)計可以被納入不同的應(yīng)用需要。最終的成果是 GeoTools,一個可以操縱空間數(shù)據(jù)的開源庫,在今天廣泛應(yīng)用于Web地理空間信息服務(wù),網(wǎng)絡(luò)地圖服務(wù)和桌面應(yīng)用程序
四年后,一個跨平臺的地理信息庫 GDAL (Geospatial Data Abstraction Library, 地理空間數(shù)據(jù)抽象庫) 出現(xiàn)了 。GDAL 使得 GIS 應(yīng)用程序可以支持不同的數(shù)據(jù)格式,它還附帶了各種有用的命令行工具,用于處理和轉(zhuǎn)換各種數(shù)據(jù)格式。GDAL 支持超過200多個個柵格格式、矢量格式的數(shù)據(jù),它是全世界使用最廣泛的地理空間數(shù)據(jù)訪問庫,支持的應(yīng)用程序包括谷歌地球(Google Earth),GRASS,QGIS、FME(the Feature Manipulation Engine)和ArcGIS。
2001年,Refractions Research(加拿大 IT 咨詢機構(gòu),創(chuàng)建于1998年) 研發(fā)了開源項目 PostGIS ,使得空間數(shù)據(jù)可以存儲在 Postgres 數(shù)據(jù)庫。同年,GeoServer 創(chuàng)建,一個基于 Java 語言開發(fā)的應(yīng)用程序,用于將空間數(shù)據(jù)發(fā)布為標(biāo)準(zhǔn)的Web服務(wù)。PostGIS 和 GeoServer 項目都取得了令人難以置信的成功,今天廣泛應(yīng)用于開源 GIS 數(shù)據(jù)庫和 GIS 服務(wù)器。
創(chuàng)新和教育:開源項目驅(qū)動
QGIS 被認(rèn)為是在開源桌面 GIS 的鼻祖。QGIS 在2002發(fā)布,它集成了GRASS 系統(tǒng)的分析功能,以及 GDAL 對于數(shù)據(jù)格式支持,提供一個用戶友好的桌面應(yīng)用程序進行數(shù)據(jù)編輯、地圖制圖與分析。QGIS 可以和其他開源 GIS 互相操作,例如;管理 PostGIS 數(shù)據(jù)庫,將數(shù)據(jù)發(fā)布到 GeoServer 作為 Web 服務(wù)。
在21世紀(jì)初,開源GIS 繼續(xù)獲得發(fā)展動力, 創(chuàng)建的開源孵化項目是 OSGeo 和 LocationTech。OSGeo 在 2006 年被推出,設(shè)計目標(biāo)是支持開源 GIS 軟件的協(xié)同開發(fā),以及促進相關(guān)軟件的廣泛應(yīng)用。LocationTech 是在 Eclipse 基金會(the Eclipse Foundation ) 中設(shè)立的一個工作組,旨在促進 GIS 技術(shù)在學(xué)術(shù)研究者,產(chǎn)業(yè)和社區(qū)之間的合作。
2011 年,“Geo for All” 創(chuàng)建。他是開源地理空間基金會(Open Source Geospatial Foundation)的教育推廣項目,目的是使人人都能接觸到地理空間技術(shù)教育的機會。作為該基金會的工作成果,許多開源 GIS 的教育資源能在互聯(lián)網(wǎng)上免費提供,包括 FOSS4G Academy 和 GeoAcademy。最后,“Geo for All” 致力于在世界各地建立了開源地理空間實驗室和研究中心,以支持開源的地理空間技術(shù)開發(fā)、培訓(xùn)和研究。
///
開源GIS軟件最早的開發(fā)一半是基于某個商業(yè)GIS軟件不支持的功能、特性及開放接口,因此不同開源GIS特點不一樣, 也適用于不同的GIS應(yīng)用需求和不同的開發(fā)環(huán)境。
主要開源GIS軟件
目前開源地理信息軟件的體系架構(gòu)已經(jīng)非常清晰,每個項目都有特有的定位, 每個開源家族都有與商業(yè)軟件對應(yīng)的功能特性,可以實現(xiàn)絕大多數(shù)的功能。
在桌面和工作站:
QGIS、Dig項目完全可以滿足普通制圖和數(shù)據(jù)采集人員的需要, 完成對地理空間信息簡單編輯、查詢等功能, 可以取代價格昂貴的Arc GIS Desktop和Map Info Professional等。
GRASS(美國軍方建筑工程研究實驗室研發(fā))完全可以充當(dāng)科學(xué)家、 研究人員專業(yè)的操作工具, 復(fù)雜的空間分析算法以及柵格處理功能可以與ARC/INFO相媲美。 它是Unix平臺的第一個GIS軟件,同其他Unix軟件一樣, 吸引了多家聯(lián)邦機構(gòu)、大學(xué)和公司的參與研發(fā)。 1988年,GRASS3.0軟件包的發(fā)行達1000余個。 GRASS軟件曾經(jīng)三次獲得美國聯(lián)邦政府的有關(guān)獎項。
OSSIM(Open Source Soft Image)是一個用于遙感、 圖像處理、地理信息系統(tǒng)、攝影測量領(lǐng)域的高性能軟件。 作為一個成熟的開源軟件庫, 它的設(shè)計目的是為攝影測量與遙感軟件包的開發(fā)人員提供一套整合的并且是最佳的方法及流程。 自1996年至今,由http://www.ossim.org/進行該開源項目的維護, 現(xiàn)在隸屬于地理空間開源基金會http://www.osgeo.org/。 項目的開發(fā)人員擁有商業(yè)和政府遙感系統(tǒng)和應(yīng)用軟件領(lǐng)域多年的經(jīng)驗, 由美國多個情報、防務(wù)領(lǐng)域的政府部門提供資助。
下面列出了常用的開源GIS:
開源GIS使用語言的情況
開源GIS 軟件的分類,按照開發(fā)語言,主要包括C 、C++、Python、Java、.NET、 JavaScript、PHP、VB、Delphi 等。 無論是采用哪種語言, 當(dāng)前開源GIS軟件都力求最大程度的支持跨平臺,其中支持Windows的開源GIS軟件為 67.7%, 82.7%的開源軟件能夠在Linux環(huán)境下運行, 這與Linux本身是一個開源的操作系統(tǒng)有關(guān)。
開源GIS的國外應(yīng)用現(xiàn)狀
目前,開源GIS軟件的主要用戶是大學(xué)、科研機構(gòu)和非政府組織。 同時,國內(nèi)的GIS公司也開始舉辦開源GIS研發(fā)大賽,圍繞著開源GIS軟件的應(yīng)用越來越多。 綜合近年來國內(nèi)外開源GIS軟件的應(yīng)用,可見,當(dāng)前開源GIS的應(yīng)用仍集中在大學(xué)、科研機構(gòu), 一些行業(yè)用戶也主要利用開源GIS進行WebServer應(yīng)用,開源WebGIS平臺的應(yīng)用較多,占開源GIS應(yīng)用80%以上。 隨著更多的行業(yè)用戶對開源GIS的熟悉和認(rèn)知以及開源GIS軟件的進一步穩(wěn)定可靠, 開源GIS的應(yīng)用將會越來越多。
開源GIS的版權(quán)許可制度
所謂自由軟件(Free Software)指允許任何人可以自由使用、復(fù)制、修改、分發(fā)的軟件, 但它不能保證免費獲得的軟件。 自由軟件在分發(fā)/獲得方面是雙模式的,就是說, 可以免費共享,也可以商業(yè)買賣。
所謂開源軟件(Open source software)指軟件的源代碼(軟件程序的原始文件)是對任何人都完全開放的, 即任何人在有關(guān)許可協(xié)議方式的規(guī)范下,都具有獲得、使用、復(fù)制、修改和分發(fā)源代碼的自由, 但為了保護初始源代碼的完整性,有關(guān)許可協(xié)議規(guī)定: 原創(chuàng)者對源代碼修改者的后續(xù)行為的自由有一定限制。
自由軟件和開源的軟件具有廣泛的共同點,在一般情況下我們統(tǒng)稱為“自由開源軟件”; 考慮到當(dāng)今它們愈來愈廣泛地參與務(wù)實的商業(yè)活動,我們也可將其簡稱為“開源軟件”。
開源GIS的特點
使用開源軟件,有下面的一些特點:
開源 GIS 優(yōu)勢不僅僅是免費,更在于其免費和開放的真正含義, 前者代表自由與免費,后者代表開放和擴展。 與商業(yè)GIS產(chǎn)品不同,由于開源 GIS 軟件的免費和開放, 用戶可以根據(jù)需要增加功能,當(dāng)所有人都這樣做的時候, 開源產(chǎn)品的性能與功能也就超過了很多商業(yè)產(chǎn)品, 因而也造就了開源的優(yōu)勢和活力。 此外,和一般的商業(yè)GIS 平臺相比, 開源GIS產(chǎn)品大多都具有跨平臺的能力, 可以運行于Linux、Windows等系統(tǒng)。 因此開源GIS 軟件得到學(xué)術(shù)界和GIS 平臺廠商越來越多的重視, 成為GIS 研究和應(yīng)用創(chuàng)新的一個重要領(lǐng)域。
開源軟件的許可制度
開源GIS軟件的版權(quán)許可制度通常采用開源軟件許可制度。 經(jīng) Open Source Initiative 組織通過批準(zhǔn)的開源協(xié)議目前有58種, 其中最著名的許可制度有 GPL(the GNU General Public License), LGPL (the GNULesser GeneralPublic License), BSD(the Berkley Software Distribution license family)和 MIT(Massachusetts Institute of Technology)等四種。
GPL協(xié)議和BSD許可具有一定的差異。
GPL的出發(fā)點是代碼開源/免費使用和引用/修改/衍生代碼的開源/免費使用,但不允許修改后和衍生的代碼作為閉源商業(yè)軟件發(fā)布和銷售。 GPL協(xié)議的主要內(nèi)容是只要在一個軟件中使用(“使用指類庫引用,修改后的代碼或者衍生代碼”)GPL協(xié)議的產(chǎn)品, 則該軟件產(chǎn)品必須也采用GPL協(xié)議, 即必須也是開源和免費。 這就是所謂的“傳染性”, 由于GPL嚴(yán)格要求使用了GPL類庫的軟件產(chǎn)品必須使用GPL協(xié)議,對于使用GPL協(xié)議的開源代碼, 商業(yè)軟件或者對代碼有保密要求的部門就不適合集成/采用作為類庫和二次開發(fā)的基礎(chǔ)。
LGPL是GPL的一個主要為類庫使用設(shè)計的開源協(xié)議。
和GPL要求任何使用/修改/衍生之GPL類庫的軟件必須采用GPL協(xié)議不同, LGPL允許商業(yè)軟件通過類庫引用(link)方式使用LGPL類庫而不需要開源商業(yè)軟件代碼, 這使得采用LGPL協(xié)議的開源代碼可以被商業(yè)軟件作為類庫引用并發(fā)布和銷售。
BSD是一個給予使用者很大自由鼓勵代碼共享的協(xié)議,但需要尊重代碼作者的著作權(quán)。
BSD允許使用者修改和重新發(fā)布代碼,也允許使用或在BSD代碼上開發(fā)商業(yè)軟件發(fā)布和銷售。
MIT是和BSD一樣寬泛的許可協(xié)議,作者只保留版權(quán)而無任何其他限制。
即必須在開源的發(fā)行版本中包含原許可協(xié)議的聲明,無論你是以二進制發(fā)布的還是以源代碼發(fā)布的。
GPL與Linux 類似,由于能夠保護開源機構(gòu)的利益,比較適合開源GIS軟件的市場推廣和研發(fā)支持, 因此被許多開源GIS平臺采用,如GRASS,QGIS,uDig。 對開源GIS軟件版權(quán)許可制度的統(tǒng)計結(jié)果表明超過一半的開源GIS采用了GPL版權(quán)許可。 但也有一些非政府機構(gòu)支持的基于MIT、LGPL的開源項目, 如SAGA、Map-Window。
OGC與OpenGIS
談到開源GIS,不得不提到 GIS 的一些數(shù)據(jù)、接口標(biāo)準(zhǔn)。除了技術(shù)的發(fā)展,標(biāo)準(zhǔn)的兼容對于 GIS 的發(fā)展,尤其是開源 GIS 的發(fā)展起到了重要的促進作用。
開放地理聯(lián)合會 (OGC)是一個參與一致進程以開發(fā)公開地理處理規(guī)格的384家公司、政府機構(gòu)、大學(xué)和個人組成的國際行業(yè)聯(lián)合會。 OpenGIS(Open Geodata Interoperation Specification,OGIS-開放的地理數(shù)據(jù)互操作規(guī)范)由 OGC 提出。由OpenGIS規(guī)格定義的開放接口和協(xié)議,支持可互操作的解決方案, 網(wǎng)絡(luò)、無線和定位服務(wù)以及主流IT,讓復(fù)雜的空間信息和服務(wù)在各種應(yīng)用中可以被授權(quán)技術(shù)開發(fā)人員使用。 開放地理聯(lián)合會協(xié)議包括網(wǎng)絡(luò)地圖服務(wù)WMS和網(wǎng)絡(luò)功能服務(wù)WFS。
地理信息系統(tǒng)將OGC產(chǎn)品劃分為兩大類型,基于遵循OGC規(guī)格的完整準(zhǔn)確的軟件。地理信息系統(tǒng)技術(shù)標(biāo)準(zhǔn)促進GIS工具進行交流。 兼容的產(chǎn)品是符合OpenGIS規(guī)范的軟件產(chǎn)品。 當(dāng)一個產(chǎn)品經(jīng)過測試,并通過 OGC 測試項目證明是兼容的, 這個產(chǎn)品就在這個地點上自動注冊為“兼容”。 現(xiàn)實軟件產(chǎn)品,即實現(xiàn)OpenGIS規(guī)格但還沒有通過兼容測試的軟件產(chǎn)品。 合規(guī)測試不可作用于所有的規(guī)格。 開發(fā)者可以注冊他們的產(chǎn)品為實施草案或經(jīng)核準(zhǔn)的規(guī)范, 而OGC有權(quán)審查和確認(rèn)每個條目。
開源GIS的發(fā)展趨勢
GIS技術(shù)發(fā)展趨勢是開放和互操作的,包括體系結(jié)構(gòu)的開放、數(shù)據(jù)模型的開放以及開發(fā)者思想觀念的開放。 開源GIS作為GIS研究的新熱點,其趨勢必將是集開放、集成、標(biāo)準(zhǔn)和互操作為一體,從軟件向服務(wù)(Server Oriented Architecture,SOA)轉(zhuǎn)變的方向發(fā)展。 通過開源GIS項目建設(shè),可以減少GIS軟件的開發(fā)周期,降低軟件開發(fā)成本,提高軟件開發(fā)效率,同時可以降低GIS平臺軟件使用成本,促進GIS社會化和大眾化。 隨著開源GIS項目越來越成熟,并且取得越來越多的應(yīng)用,開源GIS軟件目前已經(jīng)形成了一個比較齊全的產(chǎn)品線,在一些特定的功能方面優(yōu)于商業(yè)GIS平臺軟件。 盡管開源GIS軟件在穩(wěn)定性、實用性和功能全面方面存在欠缺, 但是其免費和開放的優(yōu)勢使得越來越多的企業(yè)、 科研機構(gòu)和非政府組織投入到開源GIS軟件的研究、開發(fā)和應(yīng)用推廣中, 開源GIS軟件將成為理論教學(xué)、科學(xué)研究、中小企業(yè)GIS應(yīng)用的一個最好選擇,從而也將會有更好的發(fā)展。