![]() |
52north是一個很豐富的Web GIS研究專案,本文專注的是WPS標準的應用 |
本文為楊懷恩於1012《地理資訊網路應用》課程期末報告,文章名為52north Web GIS應用。
前言
自從Google Earth在2005推出以後,網路作為一個平台實現地理資訊系統(geographic information system, GIS)的門檻即逐漸降低,各界亦開始推出各式各樣的電子地圖平台如Yahoo! 地圖、Nokia地圖及Bing Map等。從傳統的Desktop GIS到Web GIS的轉向,正說明了網頁應用程式的設計日益普及,且許多Web GIS系統架構不再使用主從式的Client-Server架構,而是使用服務導向架構(service-oriented architecture, SOA),SOA的特性更鮮明地表達網路服務(Web Service)的廣泛使用,林峰田(2012)認為SOA是網路服務元件的供應者、系統開發整合者和使用者間的互動關係,並在網際網路的環境下,透過標準的界面,將分散的各地的硬體設備(儲存空間)、資料庫、(空間)分析功能,組合而成一個資訊系統,這個轉向亦表示網路服務的開放慢慢形塑成一個一個「標準」。
網際網路已是人們生活不可或缺的一部份,根據台灣網路資訊中心2012年「台灣寬頻網路使用調查」報告 ,全國地區上網人口約有1,753萬,上網率達75.44%,儼然Web2.0技術的應用為其網路普及化的重要因素。因此Web2.0的出現使得網路服務(Web Service)如雨後春筍般竄出,其主要因應現今商業需求,如Microsoft的.NET戰略,IBM發布的Web Service Toolkit(WSTK),這也使得W3C始推出了Web Service的標準和規範,Web Service即廣泛應用在各種資訊系統中。而現今的Web Service大都是透過其所提供的應用程式介面(Application Processing Interface, API),將不同來源的網路服務加以混搭(Mashup),組合成各自需求與目標的網路應用程式(web-app)(Benslimane et al., 2008; 榮峻德等,2011)。
目前常見的標準為開放式地理資訊系統協會(OGC)與ISO所制訂如網路地圖服務(WMS)、網路圖徵服務(WFS)等,但OGC亦發現這些標準僅能提供Web GIS展示、瀏覽等功能,無法完全發揮到GIS分析處理功能,因此在2009年制定了新的標準稱網路處理服務(Web Processing Service, WPS),這個服務標準也讓Web GIS開發者有更有腳本去編寫分析演算法,將WMS、WFS和WPS實現在Web平台上,而目前功能較完整的WPS平台為德國明斯特大學開發的52north,本文將一一介紹52north WPS的功能。
52north簡介
52north原本是德國明斯特大學地理資訊研究所(ifgi)於2004年的研究計畫之一,但在2005年特文特大學國際地理資訊科學與地球觀測研究中心(ITC)與2006年ESRI等權威單位陸續加入此項計畫,目前52north為跨國合作夥伴參與開發的研究社群,擁有許多可使用的開源軟體,目的是共同推廣空間資訊(Geoinformation)領域的技術。
52north產品目前的工具與解決方式有:(1) 管理即時感測資料(managing near real-time sensor data);(2) Web及雲端的地理處理服務(web-based and cloud-based geoprocessing);(3) R與GSTAT的空間分析(geostatistical analysis with R and GSTAT);(4) ESA-DDS和GEONETCast資料的處理(processing ESA-DDS and GEONETCast data);(5) 開放街圖的路線與資料分析(OSM-based routing and data analysis);(6) 空間網路服務的安全機制(security access to geospatial web services);(7) 連結資料與語意網的工作(working with linked data and the semantic web)及(8) 詮釋資料編輯(metadata editing)等。在眾多的解決方案中,本文主要介紹的是Web及雲端的地理處理服務。
WPS在OGC標準的定義下,其操作流程如圖2所示,包括GetCapabilities、DescribeProcess和Execute。首先使用GetCapabilities操作取得伺服器所提供的基本Process描述,接著使用DescribeProcess查詢所欲使用的取得其標準輸入/輸出格式,最後將指定的輸入傳送給Execute操作,並取得輸出結果。
52north簡介
52north原本是德國明斯特大學地理資訊研究所(ifgi)於2004年的研究計畫之一,但在2005年特文特大學國際地理資訊科學與地球觀測研究中心(ITC)與2006年ESRI等權威單位陸續加入此項計畫,目前52north為跨國合作夥伴參與開發的研究社群,擁有許多可使用的開源軟體,目的是共同推廣空間資訊(Geoinformation)領域的技術。
52north產品目前的工具與解決方式有:(1) 管理即時感測資料(managing near real-time sensor data);(2) Web及雲端的地理處理服務(web-based and cloud-based geoprocessing);(3) R與GSTAT的空間分析(geostatistical analysis with R and GSTAT);(4) ESA-DDS和GEONETCast資料的處理(processing ESA-DDS and GEONETCast data);(5) 開放街圖的路線與資料分析(OSM-based routing and data analysis);(6) 空間網路服務的安全機制(security access to geospatial web services);(7) 連結資料與語意網的工作(working with linked data and the semantic web)及(8) 詮釋資料編輯(metadata editing)等。在眾多的解決方案中,本文主要介紹的是Web及雲端的地理處理服務。
WPS在OGC標準的定義下,其操作流程如圖2所示,包括GetCapabilities、DescribeProcess和Execute。首先使用GetCapabilities操作取得伺服器所提供的基本Process描述,接著使用DescribeProcess查詢所欲使用的取得其標準輸入/輸出格式,最後將指定的輸入傳送給Execute操作,並取得輸出結果。
圖2 WPS的三種處理程序
要實現52north WPS處理服務一定要有WFS,透過52north WPS客戶端程式能夠自動發送請求給WPS伺服器並取得可使用的程序;當我們選擇了特定程序後則會發送請求並了特定程序後則會發送DescribeProcess請求,並列出所需參數,例如選擇要做分析的圖層、輸入特定數據等等最後再將參數以格式傳送給特定數據等等;最後再將參數以XML/GML格式傳送給伺服器並取得分析結果。
架設52north OL WPS Client
52north
OL WPS Client即為WPS客戶端網路應用程式,其特色是建構於OpenLayers(OL)的WMS及API服務上,因此整套Web-App是完全免費、開放式的一個平台,亦為目前的趨勢。要架設52north OL WPS Client即要有網路伺服器架設Apache Tomcat,透過Apache Maven將52north WPS的SVN資料抓下來,透過GeoServer發布欲處理的WFS服務即可開始使用,由於這套系統仍在實驗階段,因此過程中當然也遇到不少障礙與問題。
架設完後,由於WMS是OL的地圖圖層,為了轉換成Google Map,我因此找了Openlayers API for
Google Map,透過JavaScript修改為Goole地圖的WMS。接著將介面中文化後,為正常啟用的52north OL WPS Client,如圖3。
圖3 52north OL WPS Client介面
討論與結論
在使用過後,我分析了幾點這套系統的優缺點,其優點為:(1) WPS可用性高,分析功能開發潛力十足;(2) JavaScript與HTML5(jQuery、CSS)程式語言架構清晰,具開放彈性;(3) 與Desktop GIS一樣可連續使用分析過的WFS繼續進行分析和(4) 比Desktop GIS更簡易、方便與即時操作。而在使用障礙上,其缺點包括:(1) 受限於Firefox Portable 12版,其餘瀏覽器與新板Firefox皆無法使用;(2) 介面過於專業而不夠友善,一般使用者仍無法意會出這是可以處理分析地理資料的平台。不過上述的缺點仍有改善空間。
最後,52north是目前最成功的Web GIS WPS應用。而OpenLayers的API讓許多Web GIS開發人員有更便利的網頁地圖功能可以免費使用。在WPS的處理特性上,其必須依賴WFS才可執行GetCapabitity等分析功能,而WFS亦可藉由GeoServer或ArcGIS Server發布,而前者完全免費。目前除了52north有WPS服務,尚有deegree WPS、ArcGIS Server,而GeoServer未來版本將正式納入WPS服務,因此WPS的開發潛力十足,其分析演算法也將是未來研究熱點。
講的很詳細
回覆刪除講的很詳細
回覆刪除