丁立,琚鋒,吳盛,趙俊,吳建曄
(湖州市測繪院,浙江 湖州 313000)
為了滿足城市化進程及城市大規模發展的需要,我國許多城市編制了新的總體規劃,一般規劃建設主要圍繞完善老城區,開拓新區的方針推進。房屋拆遷是規劃建設過程中的重點和難點,由于它涉及拆遷面積的統計,與被拆遷群眾的切身經濟利益息息相關,所以一旦處理不妥當,不僅會影響政府部門工作的正常開展,而且會導致城市區域建設進程的拖延,因此,掌握待拆遷區域的第一手房屋面積統計資料至關重要[1~3]。城市測繪院一般掌握豐富的大比例地形圖數據,通過一定的技術手段,從地形圖中統計出房屋建筑面積,有助于政府決策部門有效地控制違章建筑以及降低拆遷成本。
本文以湖州市湖東西區現狀情況統計項目為基礎,具體探討如何利用現勢強的影像數據和精確的大比例尺數字地形圖數據,結合現有軟件和程序腳本,形象直觀地表達測區內房屋建筑位置、面積、建筑結構等屬性信息并分類統計各種建筑結構的房屋建筑面積。
城市大比例尺地形圖是城市基礎地理信息系統中最重要的數據源之一[4],其中包含了豐富的地物地貌信息。利用大比例尺地形圖進行房屋面積統計,就是根據數字地形圖中房屋及其附屬物的編碼、結構、層數和基底面積等信息,計算出房屋面積的過程。整個面積統計工作分為外業確認和內業統計兩個部分,外業確認工作主要是對地形圖的修測、補測,目的是為了保證地形圖內房屋面及其附屬物的現勢性和準確性,在外業確認的基礎上,即可進行內業統計,具體流程如圖1所示。

圖1 房屋面積統計流程圖
(1)提取房屋面。一般城市地形圖中包含居民地、水系、交通、植被、地貌、管線和境界等多個類別的數據,而對于統計工作有用的僅是居民地面內的房屋信息,因此需要事先提取出統計所需的房屋面數據。
(2)疊加影像。進行此項步驟的目的也是為了確保數據的現勢性和準確性,由于外業調查存在局限性,難免錯漏情況的發生,將提取的房屋面與最新的高分辨率影像數據疊加,可以直觀地探測出兩者之間的不符合之處,為外業確認提供依據。
(3)外業確認。對存在疑義的房屋面進行外業確認,經外業實測調查后,對房屋面數據進行刪補,此外還需調查清楚房屋的類型、結構、層數以及是否存在陽臺和閣樓等信息。
(4)房屋面及其附屬物面積屬性賦值。一般地形數據中不存在地物面積屬性字段,但是通過軟件可以獲取每個面狀地物的圖斑面積,并將面積賦給臨時字段,由于陽臺在地形圖中以獨立的編碼存在,因此還需將陽臺面積賦值給對應的房屋面。
(5)統計出表。通過編程實現房屋建筑面積的自動化統計,并以一定的樣式輸出到Excel表格中。
EPS(清華山維地理信息工作站)是綜合CAD技術與GIS技術的測繪地理信息軟件平臺,具有強大的繪圖和編輯功能,軟件以數據庫為核心,將圖形和屬性關聯為一體,可便捷地實現測量外業、內業、入庫一體化[5,6]。此外,EPS提供基于VB Script的腳本級二次開發支持,用戶可根據自身需求編寫代碼實現特定的功能[7]。湖州市測繪院 1∶500地形數據以EPS數據格式存儲,圖形數據的分層、分色及編碼均采用國家或行業技術標準。
以湖州市湖東西區某塊地形圖數據為例,對房屋面積統計的實現進行展示。根據需要,統計的房屋類型主要包括建成房屋、簡易房屋、建筑中房屋、有墻(無墻)的棚房、廊房、飼養場、廁所和廟宇等,對于有陽臺的建成房屋需將陽臺面積并入相應的房屋面積中去,帶閣樓的房屋需在統計表格中反映出來。
(1)提取房屋面。該步驟可借助EPS軟件完成,即在軟件中通過各房屋類型的編碼過濾出來所有房屋面,并將其作為單獨的房屋面文件進行存儲。
(2)疊加影像。將提取的房屋面和 0.2 m分辨率的DOM數據一并導入CorelDRAW軟件中,通過將房屋面數據進行平移、旋轉和縮放操作,使之與DOM數據重合,然后可進行房屋數據現勢性和準確性的檢查,如圖2所示。

圖2 地形圖與DOM數據的疊加處理
(3)房屋面及其附屬物面積屬性賦值。此步驟通過編寫EPS腳本語言實現,由于EPS軟件中房屋和陽臺的面積和編碼默認情況下屬于基本屬性,無法對其進行輸出,因此需要先將各房屋和陽臺的面積轉換為擴展屬性。對于陽臺面積,需要將其賦給對應的房屋面,為了實現此功能,腳本語言的設計思想是以每個陽臺的幾何中心為原點,一定的距離為半徑,搜索附近的建成房屋,并將其面積加到距離最近的建成房屋面積里。對于帶閣樓的房屋,由于在地形圖中閣樓信息以注記的形式表示在房屋面內,所以在腳本語言中可以通過查找每個閣樓注記外圍的建成房屋面,然后將閣樓注記符號“G”添加到房屋面擴展屬性的某個字段內。賦值完的房屋面的擴展屬性是以數據庫表的形式存在的,該表記錄了每個待統計房屋面的屬性和面積,如圖3所示。

圖3房屋面的擴展屬性表
以下是本項目中的EPS腳本部分源代碼,主要實現房屋陽臺的層數及面積的提取。
For i = 0 To geocount - 1 'geocount為陽臺總數,遍歷所有的陽臺
YangTaiid = SSProcess.GetSelGeoValue(i,"SSObj_ID") '獲取陽臺ID
SSProcess.GetObjectFocusPoint YangTaiid,x,y '獲取陽臺焦點
ids = SSProcess.SearchNearObjIDs(x,y,1.8,2,"3103013",0) '搜索陽臺1.8米范圍內的房屋面
If ids <> "" Then '獲取最近房屋面的ID
pos = InStr(ids,",")
If pos > 0 Then
FushuwuID = Mid(ids,1,pos - 1)
Else
FushuwuID = ids
End If
lyrnum = SSProcess.GetObjectAttr(FushuwuID,"[OGLAYER]") '獲取房屋的層數
OrgBuildArea = SSProcess.GetObjectAttr(FushuwuID,"[NAME]") '獲取房屋的現有陽臺面積
SSProcess.SetObjectAttr YangTaiid,"[OGLAYER]",lyrnum '根據房屋層數設置陽臺層數
YangTaiBaseArea = SSProcess.GetObjectAttr(YangTaiid,"[BASEAREA]") '獲取陽臺面積
If IsNumeric(OrgBuildArea) Then '判斷是否有多個陽臺,實現陽臺面積的累加
tmpAllYangTaiBaseArea = CDbl(OrgBuildArea) + CDbl(YangTaiBaseArea)
Else
tmpAllYangTaiBaseArea = YangTaiBaseArea
End If
SSProcess.SetObjectAttr FushuwuID,"[NAME]",tmpAllYangTaiBaseArea '設置房屋的現有陽臺面積
End If
Next
(4)面積統計出表。采用C#語言編程實現房屋面擴展屬性表數據向Excel表文件(如圖4所示)的輸出,Excel表中的每一行對應一條房屋記錄,每條數據記錄輸出到表的屬性主要包括編碼、名稱、結構、層數、陽臺面積、基底面積和閣樓等,并在此基礎上進行面積的統計計算,其中基底總面積為房屋的單層基底面積和陽臺面積之和,建筑總面積為各層的房屋基底總面積之和,分類統計項為同一編碼的房屋面積總和,建筑面積合計項為所有編碼的房屋面積總和。

圖4 房屋面積統計表
本文以湖州市湖東西區現狀統計項目為例,探討了城市大比例地形圖在房屋面積統計中的應用。整個流程簡明清晰,結果簡潔準確,對于決策者快速掌握統計區域內房屋現狀情況具有較大幫助。縱觀整個統計流程,地形圖的現勢性關乎最終統計結果的準確性,因此地形數據的外業采集與核對工作尤為重要。城市地形圖中除了建筑房屋數據外,還包含豐富的水系和植被數據,通過類似技術手段,可相應獲取到城市水域和綠地信息,對開展市情普查統計分析工作具有一定的實用價值。
[1] 徐薇. 淺談測繪技術在房屋拆遷中的應用[J]. 城市勘測,2010(S1):119~120.
[2] 沈雨,李益進,秦志涯等. 測繪數據在拆遷統計中的應用[J]. 城市勘測,2007(6):38~39.
[3] 廖維榮. 分類房屋面積自動統計的程序實現[J]. 無線互聯科技,2015(8):54~55+57.
[4] 楊澤運,康家銀,趙廣東. 利用Quick Bird全色遙感影像更新城市大比例尺地形圖[J]. 測繪工程,2005(2):29~31.
[5] EPS2008地理信息工作站使用說明書[R]. 北京清華山維新技術開發有限公司,2010.
[6] 行李洋,黨軍勇,張月文. 淺談EPS2012在1∶2 000地形圖修測更新中的應用[J]. 測繪標準化,2016(3):47~48.
[7] 徐中華,劉萬華,余成江. 清華山維一體化軟件EPS腳本語言的應用[J]. 城市勘測,2007(6):88~90.