2012年10月26日 星期五

QGIS屬性資料查詢(SQL)

第六週  2012.10.25  QGIS屬性資料查詢(SQL)

實務上經常需要將GIS與資料庫連結,因此必須學會QGIS建立資料庫連結與查詢。
包括:
  • 安裝PostgreSQL / PostGIS 套件
  • 安裝附加元件PostGIS Manager、RT SQL layer
  • QGIS建立資料庫連結
  • PostGIS建立資料庫連結
  • PostGIS Manager SQL查詢
  • RT SQL layer SQL查詢
實際操作時,在安裝上有許多小細節,上週在家裡練習時未能成功連結。
尤其遇到這個狀況,就裹足不前:

後來課程公佈欄有完整版操作步驟,才了解可不予理會。
此外,本次作業還有一重要關鍵:SQL語法。還好老師利用本周上課時間讓大家再練習,在助教、同學協助下,一一克服。課後回家再演練,就順利完成,成果如下:
一、成功建立PostGIS 資料庫連結:


二、利用SQL查詢每平方公里人口密度大於500之國家:
       利用RT SQL layer SQL查詢,指令如下:
SELECT * FROM "public"."world" AS "t_0" WHERE "t_0".“density" > 500
       QGIS會要求點選圖層之坐標系統,如下圖:
         
     

然後即可匯出圖層:

再開啟屬性資料表:每平方公里人口密度大於500計有24個國家

三、查詢全世界人口總合、面積總合及人口密度:
     利用PostGIS Manager SQL查詢, 指令如下:
 select sum("pop_1994") as people,sum("area") as area,sum("pop_1994")/sum("area") as density from "public"."world"




四、查詢各洲大陸之國家數、人口數及面積:
         利用PostGIS Manager SQL查詢,指令如下:
select "continent",count(*) as country_no,sum("pop_1994") as people ,sum( "area") as area from "public"."world" group by continent
結果如下:



五、按照網路學園,畫張世界各國面積圖:






***國外GIS相關網站
本週瀏覽美國環保署利用GIS協助進行環境影響評估之網站---NEPAssist
http://www.epa.gov/oecaerth/nepa/nepassist-mapping.html


美國國家環境政策法(National Environmental Policy Act),要求聯邦之立法草案、命令、規則及正式計畫或特定政策方案等,應實施環境影響評估。各聯邦政府均應遵守該法規定。
美國環保署為協助各聯邦政府甚至各州政府對於新開發計畫進行環境影響評估審查,因此利用GIS建構此項網路工具,可以依使用者需求,篩選出需要的環境資訊,讓審查者或申請開發業者及早了解開發計畫所在地的背景環境。
查詢結果範例如下:



2012年10月21日 星期日

資料庫概念與規劃

第五週  2012.10.18 資料庫概念與規劃

一、上課筆記
(一)Review
     本學期迄今應已學會將一張地圖數化、作出主題圖。其中在取得控制點坐標方法包括:
    1.直接利用google map
    2.申請農委會林務局農行所相片基本圖
    3.現場利用GPS量測

(二)課堂上老師先讓同學以翡翠水庫數個測站、2012年6月及8月、溶氧及硝酸鹽氮二項測值為案例,設計資料表。歸納幾個資料庫設計重點:
1.相同物種放一起
2.採樣點、背景圖分不同圖層
3.每一資料表對應一個Entity(實體)
4.每一Row,是一筆Record
5.可計算者,不要存在「列」

(三)課後我再查詢補充:
1.QGIS坐標轉換:QGIS1.8.0在自訂坐標參考系統,已將臺灣常用坐標系統參數鍵入,非常方便:



2.資料庫基本上是電腦化資料保存系統。資料庫本身可視為電子化檔案櫃——儲存電腦化檔案的處所,使用者可以新增檔案或刪除檔案,也可以對檔案中的資料執行新增、擷取、更新、刪除等操作。(From 維基百科)

3.資料庫管理系統Database Management System,簡稱 DBMS)是為管理資料庫而設計的電腦系統,一般具有儲存、擷取、安全保障、備份等基礎功能。資料庫管理系統可以依據它所支援的資料庫模型來作分類,例如關聯式XML;或依據所用查詢語言來作分類,例SQLXQuery

4.SQL Structured Query Language,結構化查詢語言):用於資料庫中的標準數據查詢語言,IBM 公司最早使用在其開發的資料庫系統中。SQL是目前主流之資料庫管理介面,幾乎所有關聯式資料庫都支援。SQL 是高階的非過程化編程語言,允許使用者在高層資料結構上工作。它的介面能使具有底層結構完全不同的資料庫系統和不同資料庫之間,使用相同的 SQL作為資料的輸入與管理。它以記錄項目〔records〕的合集(set)〔項集,record set〕作為操縱物件,所有 SQL 語句接受項集作為輸入,回送出的項集作為輸出,這種項集特性允許一條 SQL 語句的輸出作為另一條 SQL 語句的輸入,所以 SQL 語句可以巢狀,這使它擁有極大的靈活性和強大的功能。在多數情況下,在其他編程語言中需要用一大段程式才可實踐的一個單獨事件,而其在 SQL 上只需要一個語句就可以被表達出來。這也意味著用 SQL 可以寫出非常複雜的語句。(From 維基百科)

二、.安裝PostgreSQL 及 PostGIS 套件
有鑑於QGIS本身查詢功能尚未完整,因此,若需使用更完整之SQL 語法 現階段需要配合PostgreSQL 來進行 以下說明相關操作步驟
1.安裝PostgreSQL 同時安裝 PostGIS 套件
2.安裝PostGIS Manager、RT SQL layer
3.建立資料庫連結,設定連結(直接操作)
4.圖資匯入PostGIS並開始查詢

課後我按照PPT講義安裝,學弟協助,已可成功連結資料庫,如下圖:

但接下來點選Add Fille,卻無法連結後續作業要使用之資料,即在C槽找不到country資料夾及world 的shp檔。如下圖:



三、國外GIS相關網站
延續上週美國環保署應用GIS網站http://www.epa.gov/geospatial/
本週瀏覽其對於集水區管理之應用--
Watershed Assessment, Tracking & Environmental Results (WATERS)


這個網站乃將美國地表水各項資訊加以整合之資訊系統。把美國環保署主管有關水的資料庫與 National Hydrography Dataset (NHD)連結. 使得不同的計畫可共享資訊,例如環保署將水質監測站資料與NHD之地表水(河川、湖泊、沼澤等)結合。
此一連結使得環保署水計畫資料庫(Water Program databases)得以經由地理資訊系統(GIS)進行整合、分析及展現成果。


WATERS組成如下:資料來源:http://www.epa.gov/waters/






2012年10月13日 星期六

作業一討論

第四週2012.10.11  作業一討論

一、本次上課重點:

  • 老師請同學各提出一個前三週課程及作業已學習到之GIS名詞,老師再分別加以整理或補充。班上有二十餘位同學,一節課下來很快可把目前學習做一個 Review 與整理!
  • 第二、三節則對每位同學作業進行檢討。
  • 我的作業部分,依課堂上檢討,課後我再加以修正。修正重點如下:
     (一)沿線500m影響範圍,原本作業係以二側各250公尺繪製。經老師說明,一般實務係以半徑500公尺認定。因此課後我再加以修改。

     (二)數化類型就應選擇「點」?或「線」?老師在課堂上說明,這取決於工作內容及目標。原本我的作業選擇以「點」,對於纜車站及塔柱進行數化。
           課後我再補充以「線」進行數化,可再繪出纜車路線,也可利用屬性資料表直接計算車站與塔柱之距離。
 原繳交之作業主題圖:



檢討修正後之主題圖:



討論:
1.量測車站、塔柱間距離, 以手動"measure line"方式,及以線類型數化計算方式比較,除T4~T5、T12~T13、T17~T18量測值出現較大差距,達百分之十;其餘各段距離二種方式量測結果,平均差距約僅1.5%
2.T4~T5、T12~T13、T17~T18三段都屬塔柱距離較接近。
3.顯然以手動量測二點間之距離,會因圖面放大縮小比例不一,點選量測二個端點與坐標點有差異,致影響其量測準確性。


二、GIS相關網站:
本週造訪網站:美國環保署(USEPA)對於GIS的運用  http://www.epa.gov/geospatial/



美國環保署利用GIS相關工作包括:
- 風險評估(Risk Assessment)
-「超級基金」場址評估(Superfund Site Assessment)
-污染物追蹤分佈(Track pollutant distribution)
-河川總量管制(Total Maximum Daily Load for streams (TMDL)
-集水區瀕危物種標示(Identify threatened/endangered species in watersheds)
-環境正義應用(Environmental Justice Applications)
-區域環境監測與評估計畫(R-EMAP: Regional Environmental Monitoring & Assessment Program)

後續幾週將就上述GIS相關應用進一步瞭解!


           

2012年10月9日 星期二

GIS 圖資數化-2


第三週2012.10.4 建立電腦數值圖籍與資料-2

一、課程重點

  本日上課,老師將幾個重要名詞再作一整理。我再從維基百科補充定義如下:
               圖形旋轉或是座標旋轉,下圖原座標為[u,v]系統轉換為[x,y]系統:
u單位向量轉換為x,y座標u=[ux,uy]=[cos(α),sin(α)]
v單位向量轉換為x,y座標v=[vx,vy]=[cos(α+90),sin(α+90)]=[-sin(α),cos(α)]
[x,y]=[u*cos(α)-v*sin(α),u*sin(α)+v*cos(α)].此為座標逆時針轉α角度公式,亦為物體順時針轉α角度公式。
以矩陣方式表示如下:
x = cos(α)  -sin(α) * u
y sin(α)   cos(α) v
同理當我們要對一個物體作對稱、反對稱、放大、縮小、剪力變形時,我們可以先求出變形後[u,v]相對[x,y]之單位向量,然後將所有座標乘以此單位向量座標矩陣,就可以得到我們想要繪製之圖形。
二維座標轉換通式
u=[ux,ux]=[L*cos(α),L*sin(α)]式中αu軸與x軸之夾角,Lu軸放大縮小量
v=[vx,vx]=[M*cos(β),M*sin(β)]式中βv軸與x軸之夾角,Mv軸放大縮小量
以矩陣方式表示如下:
x = L*cos(α)  M*cos(β) * u
y L*sin(α)   M*sin(β) v


二、GCP點數及位置:
       本次課堂上老師要同學測試GCP點數及位置。


           經過保角轉換(Helmert)計算:
GCP選擇1235678,機械館右下方角落坐標為 303275.1  2770783.6
                選擇123,機械館右下方角落坐標為 303256.8  2770775.9
                選擇167,機械館右下方角落坐標為 303278.2  2770780.5                  

選擇167數據較為接近1235678
所以選擇控制點時,宜在影像中均勻分布,在上週筆記所查詢的文獻也建議:在四個角落與中間選取地物特徵明顯的點位,如道路交叉點、操場與屋角等地面的點。


三、GIS相關網站

前幾天在進行「貓纜數化」作業時,主要利用圖層來自於OpenStreetMap,因此想對此網站深入瞭解 ,http://www.openstreetmap.org/



開放街道圖(OpenStreetMap, OSM)是一個網際地圖協作計畫,它提供了一個平台讓用戶針對自己熟悉或擁有資訊的區域進行地圖繪製。此網站的靈感來自維基百科此類的網站,利用Web2.0的概念進行全世界地圖及空間資訊的收集,目標在於創造一個內容自由且能由所有人共同編輯的世界地圖。
由於Google明顯獨佔網際網路的地圖服務,近年來,軟體大廠包括:微軟、ESRI都啟動大型計劃(經費)來支持OpenStreetMap。我國農委會林務局農林航空測量所為便利民眾使用,也在本年9月1日起,將原本「航遙測圖資供應平台 ATIS Web自然人憑證登入作業取消,一般民眾透過瀏覽器就可以進入網頁後可接使用該系統,可以查看近年(2010年)的台灣空照影像,並內建有多項地理資訊查詢功能。是國內公家機關首先採用OpenStreetMap為基本底圖的GIS服務平臺。
以上資料來源:Quantim GIS資源網@Sinica


四、貓纜數化作業後記







在完成貓纜數化作業之後,今天看到此則新聞,如果我可以找到斷層地圖,也許可以來套一下。

貓纜地質調查 揭市府說謊

15塔柱3車站體 位在順向坡或斷層破碎帶
〔自由時報記者劉榮/台北報導〕台北貓空纜車安全爭議不斷,台北市議員王世堅指出,北市大地工程處去年起,委外進行貓纜車站體及塔柱環境地質敏感因子調查,八月出爐的報告中,明確指出貓纜二十五根塔柱中,有十五根塔柱,以及六處車站體中有三處,共十八處均位於順向坡或斷層破碎帶上,與北市府過去一再宣稱的貓纜塔柱位於逆向坡的說法完全不符。
大地處長:塔柱本身非順向坡
貓纜塔柱順向坡問題北市府自打嘴巴,王世堅批評,北市府對貓纜結構安全長期粉飾太平,對外連白紙黑字寫的報告都死不認帳,大地處列為密件的北市順向坡列管總表,代號WS-10、11、12、14、17、23等六處順向坡,所處的位置與貓纜塔柱都不謀而合,根據最新報告,即使白紙黑字載明有十二根貓纜塔柱位於順向坡,三根位於斷層破碎帶,但北市大地工程處長林裕益還是說,塔柱本身所處位置都沒有位於順向坡,但大地處將巡查範圍擴大到塔柱左右各一百公尺後,這寬達兩百公尺的「廊帶」,確實有涵蓋部分順向坡範圍,但不影響貓纜安全性。
王世堅昨天在市議會質詢時指出,順向坡的危險性,早年從新北市汐止林肯大郡災變,到前年國道三號發生走山意外,教訓都殷鑑不遠,山坡地的任何形式開發案,只要位於順向坡,都存在崩塌風險,貓纜若存在根本性的結構安全問題,北市府應該將專業鑑定報告公諸於世,而非以技術語言欺瞞大眾,「等於讓搭貓纜的遊客身處高度風險中。」
王世堅要求大地處應公開承諾,保證貓纜安全性絕對無虞,林裕益並未正面回應。
王世堅說,大地處從去年十月起,委託開巨水利技師事務所進行貓纜沿線站體及塔柱定期巡查,根據今年八月最新出爐的巡勘報告,將六座場站及廿五根塔柱依水土敏感及危險性分成三級,其中包括T15、T21、T23等三處塔柱,都被列為A級敏感具潛在危險性。
報告明確指出,塔柱T13、T14、T15鄰近新店斷層,地質條件可能較差,對邊坡穩定有不利影響,貓空斷層更穿越T22及T23塔柱之間。








2012年10月2日 星期二

GIS-圖資數化-1


第二週 2012.09.27 建立電腦數值圖籍與資料-1

一、筆記
  本週學習圖資數化,如何將一張Scan地圖載入QGIS,並進行幾何校正(Georeferencer),輸入控制點座標、並進行數化。
  
   重點:

1.GIS資料格式:可分為向量與網格資料
(1)Raster data :影像資料  
在網格式資料中,有Grid與Raster資料兩種。
通常作為GIS的底圖,套用在向量式資料下方,常用於現地的顯示(如:空照圖、衛星影像)。其中最簡單的區分,只要可以清楚的看見真實世界的地形、地物的網格資料,都可以稱之為Raster Image(如空照圖、衛星影像)。反之,套繪在地圖中,需要輔助判識或專業解讀者,都可以稱為Grid資料(如:地形分析DEM網格、坡度、坡向、空間分析成果、淹水區域格網等)。

The cells in a raster 


(2)Vector  data:向量式資料
    向量式資料格式主要由點、線、面(Polygon)等幾何物件組成。真實世界中的地理資料,經過測量、調查、校正、定位、數化等過程,大多以「向量」格式的方式記錄儲存,利用點、線、面的方式描述地理現象,特別適合展現於不連續(discontinuous)的地理現象,如地標、建築物、縣市界等。
點資料是使用一組X和Y坐標來呈現該圖徵之位置,可呈現像是地標、消防栓等位置,線是由連續點所構成,可呈現如地下管線、道路路網等分佈狀況,面則是由一群線段所形成的封閉區域,可呈現如建物形狀、街廓、地籍等一定範圍。

 兩者資料格式之比較如下表所示:
向量格式(Vector)網格格式(Raster)
資料結構點(Point)、線(polyline)、
面(Polygon)
網柵(Grid)
圖形精緻度較好受細胞大小限制,同一面積下由越小的
細胞組成,其精細度也越高
傳統繪圖較好不易
儲存容量較小較大
分析計算能力難使用較好
易使用性較容易不易
適用資料非連續性資料連續性資料
 
    網格資料與象量資料兩者間存在著互相轉換的問題。
   (1)向量轉換成網格:較為簡單,在向量轉換網格過程中,網格中的細胞通常會以其存在最大面積的屬性作為其網格的值。
  (2)網格轉換成向量:較為複雜,目前並無普遍公認的準則可供轉換。轉換的過程中會因不同的轉換方式而有不同結果,故皆有其誤差存在。

以上資料來源:國土資訊系統網站   http://ngis.moea.gov.tw/moeaweb/Rinfo/KMSubItem.aspx?ID=21



2.幾何校正  (Georeferencer)
遙測衛星或空載航攝對不規則地表感測拍得的影像,會因感測器瞬時拍攝位
置的幾何性質、地球曲率與地形起伏等因素的影響而產生像點位移及影像扭曲等
幾何變形,故在進行任何加值應用前,宜先進行幾何校正以確保幾何精度,利用
已知點位座標的控制點資料消除影像中的像點位移。


3.地面控制點(Ground Control Point, GCP)
地面控制點是指影像上的一種特殊的像元,此像元的影像座標作為幾何校正時,轉換成地圖座標系統的參考點位座標。
控制點的選取對校正精度的影響主要表現在控制點本身分佈均勻性、位置的明確性與足夠
的數量。對轉換參數之計算而言,適當數量分佈均勻的點位可以提高校正的精
度,故選擇控制點時,需在影像中均勻的在四個角落與中間選取地物特徵明顯的
點位,如道路交叉點、操場與屋角等地面的點。
一般常用之二維座標轉換校正模式,依據轉換參數的不同,採用不同的校正
方法。理論上,轉換參數越多,精度越高,所選取的控制點也就越多,所花費的
時間也就越多,但在實際處理的過程中,經常發現,只要選取均勻分佈且精確的
控制點,通常只要選取均勻分佈足夠二階(6 個)之控制點數,其誤差成果和很多
控制點之成果相比,相距不遠。

以上資料來源:丁亞中等,高解析度衛星影像加值應用前處理技術之探討,第二屆數為地球國際研討會, 2004


4. 轉換演算
           (1) Vector-to- Raster:以Vector為點、線或多邊形的界線來填入Raster PIXELS之方式 
1)    點:是在點的位置(x,y)的對應pixel上填實(加入ID 或屬性)
2)    線:是在線段經過的對應pixel上填實(加入ID 或屬性)
3)    面:是在界線段經過的對應pixel上填實(加入ID 或屬性)即其包圍的內部填實。若有多邊形共用弧線,則需有雙邊界PIXEL來表達邊界狀況。

(2) Raster-to-Vector:將點、線、面的網格式資料,依標的的類別(點、線、面)轉換。
1)    點:孤立的PIXEL的對應位置(R,C)即為向量點的位置 (x,y)。
2)    線:需先將網格式資料細化(Thinning),在進行細線PIXEL中心點line tracing,其可為自動或半自動法的方法。
3)    面:要線找到邊界後,在進行串聯(line tracing),但其串聯的是各PIXEL的邊界格線,而非中心點。
資料來源:台大地理資源學系網站http://lab.geog.ntu.edu.tw/course/gistech/



二、課後練習

 1.開啟影像檔並進行幾何校正




2.完成Shapefile檔,並數化多邊形,包括練習處理中空圖形及共邊建築物。




3.進行增加屬性欄及面積計算...但不幸的事情發生了

   我下載QGIS1.8.0,在屬性面積計算時,沒有"面積"選項,經嘗試改以鍵入"$area",可以進行計算,但結束後卻呈現Error,再叫出屬性表格時,竟然ID的中文都變亂碼....
   上網查詢,是中文Big5編碼問題,好像1.8.0版都有此問題。
   



Quantum 資源網@Sinica http://gis.rchss.sinica.edu.tw/qgis/網站指出:
QGIS處理的方法,是在加入向量圖層時,即可以選擇編碼的種類,之後就可以正常開啟。目前QGIS支援正體中文(BIG5-HKSCS)、簡體中文(GB2312)、日文…等的編碼。當然最重要的Unicode(UTF-8)也支援。所以使用QGIS您可以減少缺字問題的發生,且可以支援多國語言的圖資。

下一節課我再來試試!



三、國外GIS相關網站

本週查詢Natural Earth 網站 ,http://www.naturalearthdata.com/

本網站是由北美地圖資訊學會((North American Cartographic Information Society))所支持的公益網站,
主要是提供小比例尺(包括1:10m, 1:50m, and 1:110m)全球GIS資料,包含向量及影像資料。

不像其他科學性或軍方地圖,本網站提供方便且可滿足多數軟體所需圖資。主要提供研究者或教師繪製小比例尺地圖的便利性以及免費的資源。


以下是該網站對資料之介紹:
Natural Earth Vector comes in ESRI shapefile format, the de facto standard for vector geodata. Character encoding is Windows-1252.
Natural Earth Raster comes in TIFF format with a TFW world file.
All Natural Earth data use the Geographic coordinate system (projection), WGS84 datum +proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs

Maximum flexibility  是本網站之目標,這也是網站自許其對GIS的貢獻。