劉鵬程,黃 欣,馬宏然,楊 敏
1. 華中師范大學地理過程分析與模擬湖北省重點實驗室,湖北 武漢 430079; 2. 華中師范大學城市與環(huán)境科學學院,湖北 武漢 430079; 3. 武漢大學資源與環(huán)境科學學院,湖北 武漢 430079
形狀是物體最直觀、有效且穩(wěn)定的特征,是識別要素的重要途徑,地圖要素形狀的描述和識別是地圖空間認知的基本內(nèi)容[1-2],具有重要的應用價值。在地圖綜合領(lǐng)域,同一要素綜合前后形狀的相似性是評價綜合算法優(yōu)劣的一個重要指標。對建筑多邊形形狀的識別是近年來形狀識別領(lǐng)域比較活躍的方向,相關(guān)應用包括建筑多邊形的化簡[3-6]、地圖匹配[7]、變化檢測等。建筑多邊形作為人造要素,在地圖中時常呈現(xiàn)出幾種特定的模式,因而常常研究其與特定形狀模板之間的匹配。文獻[3]針對丹麥的農(nóng)村房屋特點,利用一系列的英文字母模板來替代相似的建筑多邊形并制作示意性地圖。文獻[4,6]給出了構(gòu)建形狀模版的原則并利用形狀模板的精確匹配進行建筑多邊形的化簡。形狀相似性判斷是跨尺度建筑多邊形的匹配依據(jù)之一,文獻[7]基于形狀相似性進行跨尺度多邊形的匹配,從而進行不同尺度下建筑多邊形的溯源。
形狀相似性度量是建筑物多邊形識別與匹配的重要依據(jù),其計算主要包括兩個步驟[8-9]:
(1) 提取建筑物的形狀特征向量。圓形度、偏心率等形狀特征向量作為單一數(shù)值的幾何形狀特征無法對形狀進行準確表達[10],而鏈碼[11-12]、傅里葉形狀描述子[1,13-16]、距離轉(zhuǎn)角[17]、形狀樹[18]等形狀特征以一維向量來描述二維形狀,并能一定程度地還原形狀,可以建立形狀相似性的解析表達式,現(xiàn)已被廣泛使用。
(2) 設計計算模型。形狀特征向量的歐氏距離和夾角距離方法常被采用[19-20]。文獻[16]采用傅里葉形狀描述子的歐氏距離度量建筑多邊形形狀相似性,并比較了歐氏距離法和轉(zhuǎn)角函數(shù)法的適宜對象。
人類對形狀認知是大腦邏輯思維和形象思維的結(jié)合,任何模型的形狀相似性的識別結(jié)果都需要通過人類的認知來檢驗。近年來興起的深度學習方法結(jié)合了人類認知的非線性特點,已經(jīng)逐步應用到地圖要素形狀識別領(lǐng)域。文獻[7]通過圖卷積神經(jīng)網(wǎng)絡對建筑多邊形形狀相似性進行了有效的嘗試,該方法在節(jié)點數(shù)量歸一化處理及節(jié)點屬性計算過程的復雜度偏高。在形狀識別的深度學習中,提取有效的形狀特征向量是關(guān)鍵環(huán)節(jié),特征向量既不能太復雜,又要辨識度高。傅里葉形狀描述子滿足上述兩個條件,而且其向量長度與建筑多邊形點數(shù)無關(guān),還可以根據(jù)精度需要進行調(diào)節(jié);傅里葉形狀描述子通過傅里葉變換實現(xiàn)形?;マD(zhuǎn),已有成熟的數(shù)學模型??紤]到傅里葉形狀描述子在識別形狀時容易受到局部形狀的擾動,因而將圓形度、偏心度和矩形度3個宏觀形狀特征參量補充到形狀特征向量中,建立神經(jīng)網(wǎng)絡模型,在有監(jiān)督的學習訓練下建立建筑多邊形與形狀模板的匹配。試驗證明該方法相比現(xiàn)有的形狀識別方法具有較高識別精度,且模型的復雜度低。
建筑多邊形是由一組首尾點重合的坐標串組成的閉合多邊形。在平面直角坐標系中,在多邊形的邊界線上任取點P0(x0,y0)作為起點,再順時針定義邊界頂點P1、P2、…、PN,構(gòu)成閉合建筑物邊界輪廓(P0與PN重合),如圖1所示。
圖1 多邊形的分段復數(shù)函數(shù)表示Fig.1 Polygon shown as piecewise plural function
圖1中邊界上任意點P的坐標值(X(l),Y(l))均可表達為起點P0至P點的邊界總長度l的分段函數(shù)[21],具體表達式為
(1)
(2)
式中,(xi,yi)為邊界頂點Pi的坐標;Li為起點P0到邊界頂點Pi的線段長度和;Li≤l≤Li+1;0≤i≤N-1;N為建筑物邊界頂點個數(shù)。
將平面坐標系中的要素引入復平面中,可以得到點P在復數(shù)域的坐標表達式為
P(l)=X(l)+j·Y(l)
(3)
式中,j為虛數(shù)單位,j2=-1。顯然函數(shù)P(l)為以建筑物周長L為周期的周期函數(shù)[21],故可以使用傅里葉級數(shù)來表示
(4)
各階次傅里葉系數(shù)Fn的表達式為
(5)
傅里葉級數(shù)的各項系數(shù)Fn均為復數(shù),取Fn的模向量構(gòu)成傅里葉級數(shù)模向量F[22],如式(6)
F=(‖F(xiàn)1‖,‖F(xiàn)2‖,…,‖F(xiàn)n‖)
(6)
為了使傅里葉級數(shù)模向量F具有旋轉(zhuǎn)、尺度和平移不變性,對其進行歸一化處理,將模向量F中的每一項均除以第一項(系數(shù)F1的模)[22],考慮到處理后第一項的值均為1,則去除第1項后得到形狀的傅里葉形狀描述子,如式(7)所示
(d1,d2,…,dn-1)
(7)
式中,傅里葉形狀描述子D的長度K趨于無限大,在形狀識別中須根據(jù)實際精度截斷[21]。
為降低局部形狀擾動對傅里葉形狀描述子在形狀識別中的影響,將圓形度、偏心率和矩形度3個建筑多邊形的宏觀形狀特征參量納入形狀識別的特征向量中,通過計算幾何獲取這些參數(shù)。
1.2.1 圓形度(circularity)
圓形度反映物體接近圓形的程度,是無量綱的形狀特征描述,使用多邊形的面積S和周長L計算得到
(8)
式中,C為圓形度,C∈(0,1]。在所有多邊形中,圓的圓形度最大,值為1,正方形的圓形度為π/4。圓形度越接近于1,表明形狀越接近于標準圓。
1.2.2 偏心率(eccentricity)
偏心率又稱為伸長度,用來反映多邊形形狀相對圓形的扁平程度(圖2)。偏心率有多種計算公式,本文采用多邊形形狀輪廓的最小外接矩形(MBR)的長度a和寬度b之比,計算公式為
圖2 形狀特征偏心率示意Fig.2 Eccentricity explanatory diagram of polygon
(9)
式中,E為偏心率,E∈[1,+∞)。在所有多邊形中,圓和正方形的偏心率最小,值為1,形狀越扁平值越大。
1.2.3 矩形度(rectangularity)
矩形度表示形狀在其最小外接矩形中的填充程度,定義為物體的面積S0與物體最小外接矩形(MBR)的面積SR之比,計算如式(10)所示
(10)
式中,R為矩形度,R∈(0,1],在所有多邊形中,矩形的矩形度為1,圓形的矩形度為π/4,利用矩形度可以區(qū)分矩形、圓形和不規(guī)則形狀。
式(7)的傅里葉形狀描述子是長度趨于無窮大的向量,其前面分量對應于低頻信息,描述形狀的輪廓信息,后面的分量對應于高頻信息,描述形狀的細節(jié)信息[23]。在形狀度量中,可以根據(jù)實際精度需要保留傅里葉形狀描述子前面一定長度的分量,舍棄后面的細節(jié)信息[24]。本文按照文獻[16]的方法,通過傅里葉形狀描述子還原的建筑多邊形與原建筑物多邊形的重疊度來確定傅里葉形狀描述子的長度K。具體過程是:設原建筑多邊形區(qū)域為MO,傅里葉形狀描述子擬合區(qū)域為MF、MO和MF重疊區(qū)為Mo∩F,定義傅里葉形狀描述子的近似度(A_degree)為式(11)
(11)
式中,S(Mo)、S(MF)、S(Mo∩F)分別對應MO、MF、Mo∩F的面積;A_degree∈(0,1],其值越大傅里葉形狀描述子的精度越高。隨著K的增大,A_degree不斷增大,擬合形狀不斷逼近原始要素。選擇A_degree達到設定閾值(如0.98)所對應的傅里葉形狀描述子為作為形狀特征向量。圖3是部分建筑多邊形的傅里葉形狀描述子的擬合試驗,左邊黑色的圖形為原要素,藍色部分為傅里葉形狀描述子長度為K的擬合圖形,紅色為數(shù)字為傅里葉形狀描述子的近似度,可以看出當K=50時,傅里葉形狀描述子的近似度大于0.98,說明此時擬合的多邊形形狀已經(jīng)按設定閾值還原了原要素。
圖3 傅里葉形狀描述子的長度與近似精度的關(guān)系Fig.3 The approximation of Fourier descriptors with different lengths
本文所設計的神經(jīng)網(wǎng)絡輸入的特征向量包含了長度為50的傅里葉形狀描述子及3個宏觀形狀特征參量,如圖4所示。
圖4 神經(jīng)網(wǎng)絡的輸入向量Fig.4 The input characteristic vector of neural network
圖5 神經(jīng)網(wǎng)絡形狀識別模型結(jié)構(gòu)Fig.5 The architecture of neural network for shape recognition
本文使用文獻[25]提供的已知正確標簽值的5000個建筑物多邊形數(shù)據(jù)作為試驗數(shù)據(jù),對數(shù)據(jù)進行旋轉(zhuǎn)、鏡像等操作,生成6250個多邊形樣本數(shù)據(jù)。從樣本數(shù)據(jù)中提取10個穩(wěn)定的且頻繁重復出現(xiàn)的建筑物形狀,進行邊界簡化作為建筑物模板,構(gòu)建建筑物形狀模板庫。模板的構(gòu)建遵循抽象性、正交性、代表典型性、簡單清晰等原則,且綜合考慮了建筑物模板形狀特征要具備易區(qū)分性,最終確定了10個建筑物形狀模板,形如英文字母L、Z、O、Y、T、E、U、F,屬于常見的中國城市建筑物形狀類型,大部分具有直角轉(zhuǎn)角和對稱的特點。建筑物模板的名稱及其對應的形狀具體見表1。
表1 10種類型的建筑物形狀模板Tab.1 10 types of building polygon shape temples
在具體的試驗操作中,將6250個多邊形樣本按照8∶2的比例將其劃分為訓練數(shù)據(jù)集和測試數(shù)據(jù)集,即隨機抽取5000個作為訓練樣本,剩余1250個為測試集。圖6為神經(jīng)網(wǎng)絡模型在訓練和測試過程中精度的動態(tài)變化。由圖6可知,當訓練的歷元到達2000時,訓練精度和測試精度分別為98.7%、96.4%。為了驗證3個宏觀形狀特征參量值在識別中作用,只用單一的傅里葉形狀描述子(長度為50)作為神經(jīng)網(wǎng)絡的輸入向量進行訓練,發(fā)現(xiàn)其擬合精度和測試精度下降到86.5%和83.6%,說明3個宏觀形狀特征參量值可以提高神經(jīng)網(wǎng)絡的精度。
圖6 神經(jīng)網(wǎng)絡的訓練精度和測試精度Fig.6 The accuracy-epoch curves of neural network
同時將1000個測試樣本采用歐氏距離法和轉(zhuǎn)角函數(shù)法進行了形狀識別對比研究,表2為試驗中部分結(jié)果數(shù)據(jù)。表2中每個測試數(shù)據(jù)均采用3種方法與建筑物形狀模板進行匹配,其中第1行對應傅里葉形狀描述子的歐氏距離(ED)的結(jié)果,每列分別是與各形狀模板的傅里葉形狀描述子間的歐氏距離,最小距離(加粗)對應匹配的模板。第2行對應轉(zhuǎn)角函數(shù)法(TA),計算測試樣本與每個模板的轉(zhuǎn)角函數(shù)值,最小值(加粗)對應匹配模板。第3行是本文的神經(jīng)網(wǎng)絡方法(NN),每列為測試樣本匹配為各個模板的概率值,最大(加粗)為匹配結(jié)果。表2的最后1列為識別正確性判斷。
表2 使用不同形狀識別方法的建筑多邊形與形狀模板的匹配Tab.2 The match of shape between the template and candidate buildings by different shape recognition methods
續(xù)表2
表3統(tǒng)計了試驗中3種方法的測試精度,其中,本文神經(jīng)網(wǎng)絡方法的形狀識別精度高達98.7%,轉(zhuǎn)角函數(shù)法的精度為79.5%,而傅里葉形狀描述子的歐氏距離法只能達到17.2%。從結(jié)果來看,形狀局部擾動直接影響傅里葉形狀描述子的歐氏距離判斷精度,而以傅里葉形狀描述子和宏觀形狀特征參量為輸入值的神經(jīng)網(wǎng)絡精度最好。
表3 不同形狀識別方法精度表Tab.3 Precision table of different shape recognition methods
為證明本文方法在形狀識別上的普適性和可行性,在OpenStreetMap網(wǎng)站(https:∥www.openstreetmap.org/)下載武漢市、鄭州市兩個城市的建筑物矢量數(shù)據(jù),利用訓練好的神經(jīng)網(wǎng)絡對城市各個建筑物進行多邊形識別,表4為兩個城市建筑物多邊形的分類結(jié)果,圖7給出了部分識別結(jié)果的示意圖。從識別結(jié)果來看,基本與人的認知相符,有少部分O形被錯誤識別為I形,但對于這部分多邊形,人也無法準確地進行類別的劃分。有些邊界復雜的多邊形被識別為F形,針對該問題需要后期補充形狀模板的類型。
圖7 武漢和鄭州建筑多邊形形狀識別結(jié)果局部Fig.7 The local graph of the building-polygons shape recognition results of Wuhan and Zhengzhou
表4 武漢市和鄭州市建筑多邊形的各類型數(shù)量、占比Tab.4 The amount, ratio of different types building-polygon and information entropy in Wuhan and Zhengzhou
將神經(jīng)網(wǎng)絡方法應用于建筑多邊形的形狀識別是一種有效結(jié)合人的認知試驗、數(shù)學模型、計算機擬合的方法,其中樣本標簽屬于認知試驗,形狀特征提取屬于數(shù)學模型,而神經(jīng)網(wǎng)絡訓練中的參數(shù)調(diào)整屬于計算機的逼近和擬合。本文提取傅里葉形狀描述子、圓形度、偏心率和矩形度作為神經(jīng)網(wǎng)絡的輸入特征向量,構(gòu)建了建筑多邊形形狀識別的神經(jīng)網(wǎng)絡方法,試驗證明該方法比經(jīng)典的傅里葉形狀描述子歐氏距離法、轉(zhuǎn)角函數(shù)法識別精度高。本文所選用的形狀特征向量中,傅里葉形狀描述子有經(jīng)典的提取模型,能夠?qū)⒍S延展的要素形狀轉(zhuǎn)化為一維的傅里葉級數(shù)模向量,可以根據(jù)擬合精度的要求控制模向量的長度,不需要通過建筑多邊形的節(jié)點加密來保證不同多邊形的模向量長度,且傅里葉形狀描述子能基本還原建筑多邊形的形狀,說明其形狀描述上具有科學性。另外,由于傅里葉形狀描述子是多邊形頻譜的能量反映,多邊形中任何微小的變化都將會引起所有頻率的幅值變化,這樣容易造成傅里葉形狀描述子在形狀識別中不穩(wěn)定,本文將圓形度、偏心率和矩形度等宏觀形狀特征參量納入形狀特征向量,起到抑制作用。后續(xù)工作中,筆者將本文方法實際應用到城市建筑物形狀識別工作中,將進一步地探索其他要素(如自然要素)的形狀識別問題。