本發(fā)明涉及到遙感影像處理技術領域,具體地說,是一種基于多尺度多特征融合的遙感影像建筑物檢測方法。
背景技術:
建筑物作為城市主要的地物類型之一,是城市大比例尺基礎地理圖中必須重點表現的專題要素,準確的建筑物信息可以為土地管理、城市規(guī)劃等政府部門開展土地利用現狀調查和宏觀規(guī)劃等工作提供重要決策支持,其在數字化城市建設,違章建筑物查處以及軍事偵察等多個領域都有著重要的應用。
在高分辨率影像中,建筑物形狀多樣、大小不一,甚至有些被鄰近樹木所遮擋造成形狀缺失,難以用統一的形狀模型進行描述,使得遙感影像建筑物自動檢測成為了一項具有挑戰(zhàn)性的課題。
目前國內外學者針對這一課題已經提出了許多較為成熟的描述特征和方案,如sift特征、hog特征等,并采用面向對象分類、機器學習等方式來提取建筑物。但現有的特征大多只顧及到建筑物的紋理信息,而忽略了建筑物的特殊結構等,難以解決在高分辨率遙感影像中存在的建筑物被陰影遮擋以及大小、形狀、朝向各異等問題。同時目前提取效果較好的大多數方法都依賴于lidar、dsm、gis矢量數據等其他輔助數據的支持,使得檢測流程和數據變的復雜化,降低了提取效率。
技術實現要素:
針對現有技術的不足,本發(fā)明的目的是提供一種基于多尺度多特征融合的遙感影像建筑物檢測方法,該方法對高分辨率影像降采樣構建影像金字塔,在每一個尺度空間中提取用于描述建筑物特性的多種特征,通過不同尺度下多種特征融合,計算影像各區(qū)域顯著性,從而達到建筑物的自動檢測。
為達到上述目的,本發(fā)明采用的技術方案如下:
一種基于多尺度多特征融合的遙感影像建筑物檢測方法,其關鍵在于包括以下步驟:
s1:對高分辨率遙感影像降采樣,獲得由不同尺度的影像構成的影像金字塔;
s2:計算影像金字塔每一層影像對應的邊緣影像;
s3:對不同尺度的邊緣影像進行多組特征計算,并對獲得的多組特征進行融合建立特征模型;
s4:根據特征模型與鄰域局部非極大值抑制進行窗口選取,獲得最可能含有建筑物的目標窗口;
s5:對目標窗口進行小范圍內的膨脹/收縮計算,獲得貼合目標建筑物的矩形窗口;
s6:根據目標窗口的主方向旋轉所述矩形窗口,得到與建筑物朝向一致的最優(yōu)目標窗口,并根據最優(yōu)目標窗口提取出建筑物。
進一步的,步驟s1中所述降采樣采用的公式為:
其中,w(p,q)=w(p)*w(q)表示長度為5的高斯卷積核,(p,q)為高斯卷積核中點的坐標,(i,j)為影像中點的坐標。
進一步的,步驟s2中所述邊緣影像的計算步驟為:
s2.1:對影像金字塔每層影像進行高斯平滑濾波;
s2.2:計算平滑濾波后影像中每個像素點的梯度值;
s2.3:根據梯度值判定各像素點是否為邊緣點,若是則保存,否則設置為0,獲得影像對應的二進制邊緣影像;
s2.4:閾值計算,并根據閾值對二進制邊緣影像進行邊緣強化,獲得所述邊緣影像。
更進一步的,步驟s2.4中所述閾值采用otsu算法計算最大化非邊緣點和邊緣點的類間差異而獲得。
再進一步的,所述otsu算法通過最小化邊緣點與非邊緣點兩類的錯分概率,使得邊緣點和非邊緣點的類間方差最大,獲得閾值。
進一步的,步驟s3中所述多組特征包括邊緣分布特征、主方向顯著性與正交性特征、blob相似度特征和超像素跨越特征。
再進一步的,所述邊緣分布特征、主方向顯著性與正交性特征、blob相似度特征和超像素跨越特征的計算公式如下:
邊緣分布特征led:
led=de×ds,
其中,de=ne/nw為邊緣密度,ds=min(nt)/mean(nt)為邊緣分布均勻性,ne和nw分別表示以r為半徑的圓形窗口內的邊緣點數和總像素數,nt表示第t象限所包含的邊緣點數,t=1,2,3,4;
主方向顯著性與正交性特征oos:
oos=r×max{n(k)+n(k+6)},
其中,r為正交指數,n(k)、n(k+6)分別表示第k、k+6個方向級所包含的邊緣點的個數,且n(k)與n(k+6)為正交關系,所述方向級的定義為:以垂直向上為起始方向,順時針為正方向,每15°為一個方向級,從0°到180°共分為12個方向級;
blob相似度特征m:
其中,w表示滑動窗口,t表示設置的模板,(m0,n0)表示模板t的大小,(m,n)為模板t內的坐標,(i,j)為滑動窗口w內影像的坐標;
超像素跨越特征ss:
其中,|s\w|表示超像素塊s在窗口w外的面積,|s∩w|表示超像素塊s在窗口內的面積。
進一步的,步驟s3中特征模型為:
其中,saliency表示特征模型,led為邊緣分布特征,oos為主方向顯著性與正交性特征,m為blob相似度特征,ss為超像素跨越特征。
進一步的,步驟s4中所述目標窗口的獲取步驟為:
s4.1:根據特征模型計算得到影像金字塔每一層的顯著圖;
s4.2:根據滑動窗口內所有像素顯著值的和與滑動窗口的面積計算窗口的顯著性得分;
s4.3:采用局部非極大值抑制算法選取鄰域里顯著性得分最高的窗口,并抑制得分低的窗口、消除交叉重復的冗余窗口,獲得目標窗口。
更進一步的,步驟s4.2中所述窗口的顯著性得分的計算公式為:
其中,score表示窗口的顯著性得分,saliency(i)表示該窗口內第i個點的顯著值,|win|表示該窗口的面積。
本發(fā)明基于高分辨率遙感影像降采樣獲得的影像金字塔,在多尺度影響下計算邊緣密度、分布均勻性、方向顯著性與正交性、和背景的反差程度以及包含超像素塊的完整性等多個特征,并通過特征模型來尋找建筑物所在的目標窗口,實現了高效準確地自動檢測建筑物。
本發(fā)明的顯著效果是:
(1)將高分辨率遙感影像中建筑物的亮度、方向等光譜以及結構等特性,結合邊緣分布、區(qū)域顯著信息以及超像素水平上的完整性等構建多特征模型,在高斯金字塔影像上進行多尺度的建筑物檢測,對大小、形狀、朝向各異的建筑物的檢測具有普適性;
(2)本發(fā)明更深層次地挖掘了影像的空間特征和語義信息,僅利用高分辨率遙感影像就可以實現高分辨率影像上建筑物目標窗口的快速、準確、自動提取,同時設計了新的邊緣影像計算方法,有效地提高了建筑物自動檢測的精度和效率。
附圖說明
圖1是本發(fā)明的方法流程圖;
圖2是影像金字塔模型下同一尺度的窗口分別對應不同面積地物的示意圖;
圖3是所述邊緣影像的計算方法流程圖;
圖4是局部邊緣分布示意圖;
圖5是建筑物邊緣的方向正交性示意圖;
圖6是邊緣方向梯度直方圖;
圖7是所述正方形模板的示意圖。
具體實施方式
下面結合附圖對本發(fā)明的具體實施方式以及工作原理作進一步詳細說明。
如圖1所示,一種基于多尺度多特征融合的遙感影像建筑物檢測方法,按照以下步驟進行:
s1:建筑物在高分辨率遙感影像中的大小、位置、朝向都有著很大的變化,單從一個尺度,很難將不同大小的建筑物檢測出來,因此首先對高分辨率影像做降采樣得到影像金字塔;
采用上述高斯函數來平滑圖像,其中,w(p,q)=w(p)*w(q)表示長度為5的高斯卷積核,(p,q)為高斯卷積核中點的坐標,(i,j)為影像中點的坐標。由此得到一個分辨率逐級遞減的圖像序列{ml,ml-1,……,m0}。由于金字塔底層高分辨率影像細節(jié)保存完好,而頂層低分辨率影像則更注重全局特征,基于影像金字塔進行多尺度檢測建筑物能兼顧細節(jié)和整體,達到更高的檢測精度。
同一大小的窗口在不同分辨率的影像中對應著不同面積,如圖2所示,假如原影像為1m的分辨率,則10*10像素大小的窗口在第一層原始影像中對應實際面積為10*10㎡,在第二層經過一次降采樣的影像中對應的實際面積為20*20㎡,而在第三層影像中對應的實際面積為40*40㎡。因此通過建立影像金字塔,只需要設置一個尺寸的窗口,就能實現從10*10㎡到40*40㎡大小的地物的檢測,從而實現了多尺度提取不同大小的建筑物。
邊緣是描述目標的一種重要特征,邊緣信息可以反映出光譜的不連續(xù)性、反差、方向信息以及結構類型。尤其對于建筑物這樣有著特殊結構和紋理的目標,邊緣信息對于目標提取可以很好的起到指示作用,因此進入步驟s2。
s2:計算影像金字塔每一層影像對應的邊緣影像;
本例中,不同于常用的canny、sobel等邊緣檢測算法,本發(fā)明采用一種簡單而更為有效的邊緣計算方法來計算影像金字塔每一層影像對應的邊緣影像,流程圖如圖3所示:
s2.1:首先根據下式濾波器對影像金字塔每層影像進行高斯平滑濾波,避免將一些尖銳的噪聲點錯誤的當作邊緣:
s2.2:計算平滑濾波后影像中每個像素點的梯度值;
s2.3:根據梯度值判定各像素點是否為邊緣點,即:將在梯度主方向上比相鄰兩個像素點梯度大的像素作為邊緣點保存起來,而其他非邊緣點則設置為0,獲得影像對應的二進制邊緣影像;
s2.4:邊緣影像由邊緣和非邊緣兩類組成,邊緣和非邊緣之間的類間方差越大,說明這兩部分的差別越大。當部分邊緣錯分為非邊緣或部分非邊緣錯分為邊緣都會導致類間方差變小,因此使類間方差最大的分割意味著錯分概率最小。采用otsu算法遍歷計算閾值,使得邊緣點和非邊緣點兩類的錯分概率最小,即這兩者的類間方差達到最大。并根據閾值對二進制邊緣影像進行邊緣強化,獲得所述邊緣影像。
s3:對不同尺度的邊緣影像進行邊緣分布特征、主方向顯著性與正交性特征、blob相似度特征和超像素跨越特征計算,并對獲得的多組特征進行融合建立特征模型,具體如下:
邊緣分布特征led:和其他地物相比,建筑物具有其獨特的邊緣信息。例如相較于大片的空地、湖等包含邊緣較少的地物,建筑物應當是具有一定的邊緣密度的;和道路、林地等條帶狀或不規(guī)則的目標相比,建筑物的邊緣應當是完整且均勻分布的。根據建筑物的這些特性,本發(fā)明采用了局部邊緣密度和邊緣分布均勻性兩個特性來共同描述建筑物的邊緣特征,用以初步篩選目標。
對于邊緣影像,其紋理信息主要是通過局部窗口的邊緣密度和邊緣像素分布的均勻性來表現的。在步驟s2得到的邊緣影像的基礎上,定義邊緣分布特征led如下公式:
led=de×ds,
其中,de=ne/nw為邊緣密度,ds=min(nt)/mean(nt)為邊緣分布均勻性,ne和nw分別表示以r為半徑的圓形窗口內的邊緣點數和總像素數,nt表示第t象限所包含的邊緣點數,t=1,2,3,4;如圖4所示,取四個象限所包含的最少的邊緣點數min(ni)除以平均每個象限包含的邊緣點數mean(ni)得到ds,用來衡量邊緣點在四個象限內分布的均勻性。取led為de與ds的乘積,只有當邊緣密度和邊緣分布均勻性兩者都較大的時候,邊緣分布特征led才會取到一個較大值。考慮到建筑物一般具有完整且較強的邊緣,在四個象限內的分布均勻,應當具有較大的led值,因此以led來描述建筑物的邊緣特征。
主方向顯著性與正交性特征oos:建筑物大多是較為規(guī)則的矩形結構或者多邊形結構,具有較為明顯的主方向并且顯現正交性,即具有兩個相互垂直的主方向(θm和θm+90°,θm∈[0,90°]),如圖5所示。因此在步驟s2得到的邊緣影像f(x,y)的基礎上,計算窗口內每個邊緣點的梯度方向θ:
以15°為一個方向級將梯度方向劃分為12個區(qū)間,并統計每個方向區(qū)間包含的邊緣點數,如圖6所示。如果窗口內包含有垂直結構的目標,應當在某兩個特定的相互垂直的方向上具有較密集的邊緣,該特定的方向即為目標主方向。因此本發(fā)明通過計算相互垂直的兩個方向級的邊緣點數的和,并將取到最大值的兩個垂直方向級作為該窗口的主方向,即max{n(k)+n(k+6)},k<6,其中n(k)表示第k個方向級所包含的邊緣點的個數,n(k)和n(k+6)相差90°,是正交關系。
同時將這兩個相互垂直的方向級作比來計算該區(qū)域的正交指數r=n(k)/n(k+6)orn(k+6)/n(6),r<1.0。相互垂直的邊緣結構應當在兩個垂直主方向級上同時包含更密集的邊緣點,因此具有更大的正交指數r。
本實施例定義結合了主方向和正交性的特征指數計算公式如下:
oos=r×max{n(k)+n(k+6)},
其中,r為正交指數,n(k)、n(k+6)分別表示第k、k+6個方向級所包含的邊緣點的個數。
blob相似度特征m:考慮到建筑物大多和周圍的樹、道路等背景形成明顯的亮度反差,因此設計了一個中間亮周圍暗的正方形模板t,如圖7所示,來衡量窗口中心和周圍的反差程度。模板t覆蓋住滑動窗口w,根據下式計算窗口和模板的匹配測度m來反映該滑動窗口w與模板t的相似程度:
其中,w表示滑動窗口,t表示設置的模板,(m0,n0)表示模板t的大小,(m,n)為模板t內的坐標,(i,j)為滑動窗口w內影像的坐標;
相關性越大,表示窗口w和模板t越相似,即窗口中心與周圍的反差越強烈,說明該滑動窗口內包含建筑物的可能性就越大。
超像素跨越特征ss:該特征普遍適用于目標識別,其中心思想是一個目標應當包含一個或多個完整的超像素塊,而不能夠包含半個超像素塊。即一個超像素塊應當屬于一個目標,而不能被分給多個目標。
本實施例中也將該思想用于描述建筑物,采用基于圖的快速超像素分割算法將影像分割為由超像素塊組成的超像素影像,通過計算滑動窗口內不完整的超像素塊的面積除以窗口總面積,得到該滑動窗口跨越超像素塊的程度。如果該窗口包含著完整的目標,則其應當盡可能少的跨越了超像素塊,因此該項特征值ss也就越大。
其中,|s\w|表示超像素塊s在窗口w外的面積,|s∩w|表示超像素塊s在窗口內的面積。
將上述計算所得的邊緣分布特征led、主方向顯著性與正交性特征oos、blob相似度特征m、超像素跨越特征ss進行融合建立特征模型:
其中,saliency表示特征模型,led為邊緣分布特征,oos為主方向顯著性與正交性特征,m為blob相似度特征,ss為超像素跨越特征。
s4:根據特征模型與鄰域局部非極大值抑制進行窗口選取,獲得最可能含有建筑物的目標窗口,具體步驟為:
s4.1:根據特征模型計算得到影像金字塔每一層的顯著圖,其中每個像素點對應一個顯著值saliency;
s4.2:根據滑動窗口內所有像素顯著值的和與滑動窗口的面積計算窗口的顯著性得分,計算公式為:
其中,score表示窗口的顯著性得分,saliency(i)表示該窗口內第i個點的顯著值,|win|表示該窗口的面積。
因此,包含有建筑物的窗口相較于背景應該表現出明顯更強的顯著性,因此得分高的窗口即為可能包含有建筑物的窗口。但是滑動窗口會導致窗口存在包含或者大部分交叉的情況,所以采用局部非極大值抑制算法來找到最佳目標窗口位置,具體參見步驟4.3。
s4.3:通過定義一個鄰域大小,判斷中心點的窗口得分是否比其鄰域范圍內所有的窗口得分都要高,如果是則認為該窗口是一個局部極大值;否則舍棄該窗口;
經過非極大值抑制篩選的窗口再進行縱向比較,如果一個窗口的顯著性得分是局部最大,且比金字塔影像中其他層的對應位置上的窗口得分高,則該窗口為最適尺寸的最可能含有建筑物的目標窗口。
s5:對目標窗口進行小范圍內的膨脹/收縮計算,獲得貼合目標建筑物的矩形窗口,具體方式為:
由于步驟s4中用于檢測顯著性的滑動窗口是正方形,而事實上絕大多數建筑物都是矩形或者不規(guī)則的形狀,因此在得到目標窗口之后向外/內分別做一個小范圍的膨脹/收縮計算,窗口寬w和h分別收縮和擴張原邊長的1/2長度,并計算新的窗口的得分:
其中,score(h1,w1)即寬、高分別為w1和h1的新窗口的得分,|win(h1,w1)|為該新窗口的面積,即新窗口的得分等于新窗口內所有點的顯著性得分總和除以該窗口的面積。最合適的窗口應當是在最小的范圍內表現出最強的顯著性,也因此獲取最大值的窗口即為最貼合目標的矩形窗口。
s6:根據步驟s3的中間過程中求得的目標窗口主方向θ旋轉所述矩形窗口,得到與建筑物朝向一致的最優(yōu)目標窗口,并根據該最優(yōu)目標窗口提取出建筑物。
本實施例基于高分辨率遙感影像,首先通過降采樣獲得金字塔影像,然后在多尺度影像下計算邊緣密度、分布均勻性、方向顯著性與正交性、和背景的反差程度以及包含超像素塊的完整性等多個特征,并通過多特征融合后建立的特征模型與鄰域局部非極大值抑制來尋找建筑物所在的目標窗口,實現了高效、準確地自動檢測建筑物。