ArcMap進行天空開闊度(SVF)分析


這里的SVF並不是生物學或醫學的(Stromal Vascular Fraction),而是指GIS中的(Sky View Factor,SVF),即為(城市)天空開闊度。

城市天空開闊度(Sky View Factor,SVF)是重要的城市形態學參數,那今天博主就跟大家講一下如何用ArcMap來計算天空開闊度。

1、加載數據

需要加載的數據包括buildings(帶有高度信息的建築數據),area(范圍數據),用ArcMap進行添加。如圖:

   

 

buildings數據顯示 

 

area數據顯示

2、裁剪

(1)將buildings及area進行備份,存為buildings2、area2,打開編輯器,【開始編輯】,選中所有建築,【合並】。

(2)用 【編輯器】中的【裁剪】工具進行裁剪。

 

裁剪參數設置

 

裁剪結果圖

 

3、合並

設置環境,用ArcToolbox中的【合並】工具,對裁剪后的圖層與建築圖層(buildings)進行合並。

 

環境設置參數

 

合並參數設置

 4、面轉柵格

 

面轉柵格參數設置

 

面轉柵格結果圖

5、柵格轉點

 

柵格轉點參數設置

柵格轉點,並對多余部分進行刪除。

 

柵格轉點結果圖

6、建立緩沖區(推薦使用方法二)

 

 方法一:

 

 

緩沖區參數設置

 

 

緩沖區結果局部圖

 

屬性表

此時我們可以看到屬性表中只有40個要素,原因是grid_code(即為中心點高程數據)相同的為同一要素,需要將多部件轉為單部件

(1)【編輯器】【開始編輯】選中所有要素(center_buffer中)。

(2)【高級編輯】【拆分多部件要素】。

(3)【添加字段】,“CID”,作為圓的唯一標識

方法二:

 

 

緩沖區分析參數設置

 

屬性表

此時pointid作為標識字段,grid_code仍為2中心點高程

 

讓讓你們康康全圖吧,但願沒有密集綜合征

 

7、相交

 

 

相交參數設置

 

相交結果(部分)

 

 

 8、計算SVF

接下來的操作均為表格操作,要熟練使用柵格計算器,若忘記SVF公式,可看文章開頭。

(1)【添加字段】,“SinA”

 

高差h=([Height]- [grid_code]),

半徑r=10m

(2)【字段計算器】,輸入公式:“ ([Height]- [grid_code]) / Sqr ( ([Height]- [grid_code]) *([Height]- [grid_code]) +100 )”

 

字段計算器參數設置

(3)篩選SinA值為負數,歸零

一些小伙伴也能要問了,為何會出現負值?原因是相交就很難避免一些高的建築與低的建築在同一個圓中,而他的圓心又恰好在高的建築上,自然就出現的SinA值為負的情況,而SVF為天空開闊度,要計算的自然是高於中心點的角,SinA應為非負,為減小影響,要進行歸零處理。(還有一種方法是直接刪除,而且此方法更合理,但本例中會出現些許問題)

(當然,如果你只計算地面的天空開闊度就不會有這種煩惱了)

 

 

 

 (4)清除所選要素

(5)匯總

計算sinA平均值

 

 

 

 

 (6)計算SVF

center圖層,【添加字段】

 

 

 

 

 

 右鍵,【連接】,【連接數據】

 

連接數據參數設置

 

 

 【字段計算器】,輸入公式“1- [averageSinA.Ave_SinA]”,移除所有連接。

 

字段計算器參數設置

 

 

 

9、點轉柵格

 

點轉柵格參數設置

  

 

 

 天空開闊度(SVF)結果圖

 

 顏色越紅,表示天空開闊度越差;顏色越藍表示天空開闊度越好。

 

 

 

附頁:

如果針對地面通風等進行研究,可將5m高度以上建築,svf設為1,作為成本柵格

具體操作如下:

(1)按屬性選擇

 

按屬性選擇參數設置

(2)按位置選擇

 

按位置選擇參數設置

 

 

按位置選擇結果圖

 

(3)切換選擇

【打開屬性表】【切換選擇】

 

切換選擇結果圖

 

(4)點轉柵格

 

點轉柵格參數設置

   

   

 

 SVF結果圖

 

 

 知識點補充:

SVM

支持向量機(Support Vector Machine, SVM)是一類按 監督學習(supervised learning)方式對數據進行 二元分類的廣義線性分類器(generalized linear classifier),其 決策邊界是對學習樣本求解的最大邊距超平面(maximum-margin hyperplane)  。
SVM使用鉸鏈損失函數(hinge loss)計算經驗風險(empirical risk)並在求解系統中加入了正則化項以優化結構風險(structural risk),是一個具有稀疏性和穩健性的分類器   。SVM可以通過核方法(kernel method)進行非線性分類,是常見的核學習(kernel learning)方法之一 [4]  。
SVM被提出於1964年,在二十世紀90年代后得到快速發展並衍生出一系列改進和擴展算法,在 人像識別文本分類模式識別(pattern recognition)問題中有得到應用。

 

今日份歌曲推薦:

龍卷風—周傑倫

 

                                 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM