葉秀芬, 于淼, 郭書祥, 梁洪
(哈爾濱工程大學 自動化學院,黑龍江 哈爾濱 150001)
遙感圖像語義分割廣泛應用于壞境監(jiān)測、交通規(guī)劃、自動駕駛系統(tǒng)等多個領域[1]。隨著遙感技術的迅猛發(fā)展,高分辨率的遙感衛(wèi)星圖像具有觀測范圍廣、包含物體信息多、信息特征提取困難等特點[2]。傳統(tǒng)的圖像處理方法在應對遙感圖像目標提取的問題時,主要難度在于目標特征選取時十分依賴于領域專家的經(jīng)驗[3]。
在遙感圖像目標分割領域中,目前多是對一些圖像中的地貌信息如水體、森林、道路等占比較大的區(qū)域進行分割,對于細弱目標精確分割的研究很少。而高壓輸電線路作為遙感圖像中細弱目標的代表,存在著目標特征難以精確提取、目標類別占整體圖像比例過少以及目標受背景干擾大等挑戰(zhàn)。目前常用的一些圖像分割方法難以取得精確的遙感圖像細弱目標分割效果。實現(xiàn)遙感圖像中高壓輸電線路這類細弱目標準確的分割,對于輸電線路的運維管理和故障檢測具有重大研究意義和應用價值。
對于遙感圖像中的目標分割,國內(nèi)外學者在不同的領域中提出了各自的方法。田昊等[4]提出了基于先驗形狀約束水平集模型的遙感圖像中建筑物提取的方法。周家香等[5]提出了一種基于形態(tài)學濾波的高分辨率遙感圖像城區(qū)不透水表面的提取方法。趙雪梅等[6]利用隱馬爾可夫模型和高斯隨機場模型,提出了一種模糊聚類的遙感圖像分割算法。這些方法針對的目標數(shù)據(jù)都比較單一,不具有良好的泛化能力,對于細弱目標分割更不能起到良好的效果。
對于遙感圖像中高壓輸電線路這一研究方向,王雪[7]設計了一種高壓輸電線無人機巡檢算法和軟件,使用自適應中值濾波方法對無人機獲取的高壓輸電線圖像進行去噪和增強。許志軍[8]同樣針對無人機巡檢圖像,通過使用深度學習網(wǎng)絡,對于圖像中高壓輸電線的缺陷位置進行檢測標注。上述算法的應用場景都是基于距離較近的無人機拍攝圖像,背景簡單且識別的線體目標相比衛(wèi)星遙感圖像中的相同目標清晰很多。如何實現(xiàn)精準的像素級遙感圖像細弱目標分割,目前仍沒有較好的方法。
近年來,深度學習方法對圖像語義分割領域的發(fā)展起到了巨大的促進作用。2014 年,Long等[9]提出了全卷積網(wǎng)絡(FCN),這使得卷積神經(jīng)網(wǎng)絡無需全連接層即能實現(xiàn)像素級的預測。2015年提出的U-net基于編碼-譯碼的對稱式架構,編碼過程通過池化層逐漸減少位置信息、抽取更高層級的語義特征[10]。同年提出的SegNet網(wǎng)絡,將池化層結果應用到譯碼過程[11],引入了更多的編碼信息。但以上的網(wǎng)絡都面臨著遙感圖像中細弱目標特征不明顯、類別非均衡的問題,對于遙感圖像高壓電線一類細弱目標的分割效果同樣不能令人滿意。
本文針對上述存在的問題和挑戰(zhàn),提出了一種新型網(wǎng)絡模型,增加了網(wǎng)絡對細弱目標的特征提取與利用能力,加強了網(wǎng)絡模型對細弱目標的注意力。并使用集成學習的方法對結果進行多模型投票表決,增強了模型的分割精度和泛化能力。
在現(xiàn)有的一些深度學習語義分割方法中,U-net由于其對稱式的結構設計和跳躍連接的思想,能夠有效地融合CNN中的低維和高維特征。但是 U-net 構架卷積層較淺,各個卷積層之間的聯(lián)系較少,不能良好地提取細弱目標的精確特征,識別過程仍受背景干擾和類別分布顯著非均衡的影響,對遙感圖像中細弱目標分割精度不佳。
DenseNet網(wǎng)絡[12]通過其特有的稠密連接結構,加強了網(wǎng)絡各層級間特征的傳遞,能夠在保證每層較少計算參數(shù)的前提下仍保持較高的預測精度。另外稠密連接的思想使得網(wǎng)絡抵抗過擬合的能力顯著增強,具有更好的泛化性能。由于稠密連接結構的上述優(yōu)點,能夠顯著加強網(wǎng)絡各層特征間聯(lián)系的特性,十分適用于遙感圖像中細弱目標的特征提取。
本文結合了DenseNet網(wǎng)絡中的稠密連接思想和U-net中的對稱式架構,提出Dense-Unet網(wǎng)絡結構,有效地改進了網(wǎng)絡細弱目標特征的提取能力。Dense-Unet模型在結合了U-net結構簡單、對訓練數(shù)據(jù)要求少的特點基礎上,使用稠密卷積塊代替了原本U-net中的卷積層,通過多個卷積層間稠密連接和各個稠密卷積塊間跳躍連接的方式,顯著加強了網(wǎng)絡各層級之間的特征聯(lián)系,使得下采樣層中所提取到的細弱目標特征能夠高效地傳輸?shù)缴喜蓸訉又?,減少了由于池化和降采樣引起的特征損失,增強了網(wǎng)絡對細弱目標的識別精度,使得網(wǎng)絡最終能夠實現(xiàn)精準的像素分類定位。在網(wǎng)絡模型的搭建中,進一步使用了批標準化層和瓶頸層對網(wǎng)絡進行優(yōu)化改進,減小了由于遙感圖像細弱目標分割過程出現(xiàn)的數(shù)據(jù)分布不平衡問題,加快了訓練時收斂的速度。
Dense-Unet網(wǎng)絡的基本結構如圖1所示,整個網(wǎng)絡由左側的下采樣路徑和右側的轉置卷積上采樣路徑組成,左右兩側分別對應著網(wǎng)絡的編碼和解碼部分。在下采樣路徑與上采樣路徑之間引入跳躍連接,補償由于池化引起的特征損失,幫助上采樣路徑更好地獲得由下采樣路徑中細弱目標特征信息,加強了特征維度之間的聯(lián)系。
而在網(wǎng)絡具體的上下卷積路徑中,首先使用稠密卷積塊來代替原本簡單的卷積層,稠密卷積塊的結構如圖2所示。每個稠密卷積塊內(nèi)部又由多個3×3的卷積層組成,在每個卷積層的前后使用BatchNorm層和SeLU激活函數(shù)來防止訓練當中可能引起的梯度消失現(xiàn)象。針對遙感圖像中細弱目標的分割問題,稠密連接的結構能融合卷積中高維和低維特征來更好地確認目標的邊界,從而更好地提升分割精度。
圖1 Dense-Unet網(wǎng)絡結構Fig.1 Structure diagram of Dense-Unet network
圖2 Dense-Unet中稠密卷積塊結構示意Fig.2 Dense convolution block structure diagram in Dense-Unet
對于圖像處理任務來說,在處理過程中都需要對數(shù)據(jù)進行歸一化處理。如果送入網(wǎng)絡中的每一批數(shù)據(jù)都具有不同的分布,會給網(wǎng)絡的訓練帶來困難和干擾,導致學習速度下降,甚至可能會出現(xiàn)梯度消失和梯度爆炸等問題。批標準化(BatchNorm)思想[13]由Google于2015年提出,其通過降低每一批數(shù)據(jù)的協(xié)變量偏移來解決數(shù)據(jù)分布不同所引發(fā)的問題,加入批標準化之后可以加快訓練速度,進一步突出數(shù)據(jù)特征之間的相對差距。在現(xiàn)在常用的語義分割網(wǎng)絡如U-net中,沒有引入BatchNorm層,而本文所提出的Dense-Unet網(wǎng)絡在所有的卷積層和轉置卷積層之后都加入批歸一化層來緩解梯度消失問題并提高網(wǎng)絡的訓練速度,使網(wǎng)絡的收斂過程加快。
在網(wǎng)絡中,通過批標準化先求出訓練過程中的每一個訓練批次的均值和方差,之后對該批次中的每個數(shù)據(jù)做歸一化處理,以減少由于數(shù)據(jù)分布不均引起的訓練困難問題。再經(jīng)過平移和縮放后就保證了每一次數(shù)據(jù)歸一化后既能保留原來學習到的特征,又達到了歸一化操作后加速訓練收斂過程的效果。
在原始的U-net和DenseNet的網(wǎng)絡結構中,在卷積層之后均選擇ReLU作為網(wǎng)絡的非線性激活函數(shù)。但ReLU函數(shù)在實際的訓練過程中有時會發(fā)生梯度失活現(xiàn)象,當一個比較大的梯度流過一個ReLU神經(jīng)元后,可能這個神經(jīng)元的梯度將會永遠變?yōu)榱?。當學習率很大的時候,使用ReLU激活函數(shù)會使得網(wǎng)絡中很多神經(jīng)元徹底失活。
為了解決ReLU函數(shù)在訓練過程中的不足,在本文所使用的的網(wǎng)絡模型中,使用SeLU[14]激活函數(shù)代替ReLU:
(1)
SeLU相比于ReLU函數(shù),引入2個參數(shù)α和λ,α和λ是大于1的固定常數(shù)。SeLU的優(yōu)點在于其函數(shù)負半?yún)^(qū)不包含死區(qū),當輸入大于零時,經(jīng)過激活函數(shù)的輸出會被放大,在方差過小時,可以增大方差,同時能夠防止梯度消失發(fā)生,解決了ReLU激活函數(shù)中輸出結果沒有負值和神經(jīng)元失活壞死的問題。
在深度學習中,不平衡的類別會導致網(wǎng)絡在訓練過程中過于側重樣本數(shù)目較多的類別,甚至為了提升精度忽視樣本很少的類別,導致模型在測試集上的泛化效果很差。在所截取的遙感圖像中目標高壓電線和高壓電線塔占整體圖片信息比例很小,尤其是目標高壓電線十分精細,難以分辨且受背景中土地間的溝壑等周邊環(huán)境干擾明顯,誤識別概率很大,實現(xiàn)精確地分割比較困難。
針對數(shù)據(jù)中不平衡類別導致網(wǎng)絡對于占比較少的類別欠學習這一問題,本文選擇增加類別占比較少目標在訓練中的權重和誤分類的懲罰代價,并將這種懲罰代價直接體現(xiàn)在損失函數(shù)之中。即采取代價敏感的方法,設置權重敏感向量來增大模型在訓練過程中對小類別的注意力,對所有的分類均加上一個權重值,每一類的權重大小與該類別占整體樣本中的比例負相關。這樣的一系列權重值就構成了一個代價敏感向量。
為了進一步提升網(wǎng)絡在測試集上的精度和泛化能力,采用集成學習Bagging的方法來進一步提升模型精度。Bagging是集成學習的一個方法,其特點是可以并行訓練多個基分類器,從而在訓練過程中節(jié)省大量時間開銷。其中集成學習算法具體實現(xiàn)過程如下:
1) 訓練Dense-Unet、U-net與SegNet這3個網(wǎng)絡作為基本網(wǎng)絡,并每次從訓練集中有放回地隨機抽取部分作為新的訓練集,有些樣本可能會多次抽到,一共抽取出3個新的訓練集,這3個訓練集之間是相互獨立的。
2) 每次使用一個新訓練集得到一個模型,在各自的訓練集上分別訓練得到Dense-Unet、U-net與SegNet基本模型,這3個模型的訓練過程同樣是獨立的。
3) 最終將分別訓練得到的3個模型分配不同權重(Dense-Unet為45%、U-net為 30%、SegNet為25%)進行投票,各模型共同對每個像素點的類別進行預測,最終組合成一個新的集成模型。
最后,將訓練集按照如上方法隨機抽取得到了3份新數(shù)據(jù)集,最終得到3個獨立的語義分割模型,并基于此進行組合,對測試圖片中每個像素點的分類都由這3個基礎模型投票表決,以少數(shù)服從多數(shù)的原則得到最終的預測結果。
采用這種Bagging集成學習的方法能夠有效地減少最終模型的估計方差,減少圖像中某些像素點存在的誤檢和漏檢情況,增加最終整體分割結果的精度。
本文所采用的數(shù)據(jù)集來自于谷歌地圖所拍攝的衛(wèi)星遙感圖像。主要為郊區(qū)或森林等不同背景下帶有高壓電線的圖片,所使用的均為可見光譜的RGB信息。將數(shù)據(jù)集樣本分類3類:高壓電線(標記0)、高壓電線塔(標記1)、其他信息(標記2)。
對于原始數(shù)據(jù)集,選取全部數(shù)據(jù)的70%作為訓練集,20%作為驗證集,10%作為測試集。并在此基礎上進行數(shù)據(jù)增強和數(shù)據(jù)擴充。對于數(shù)據(jù)的預處理,由于有些原始遙感圖像尺寸較大,首先進行隨機縮放、旋轉變換(對稱填充)操作,并將圖片隨機剪裁到同一尺寸1024×1024,之后再對圖片的顏色數(shù)據(jù)進行增強,包括圖像亮度、飽和度、對比度的變化,最終對數(shù)據(jù)進行水平和垂直方向的翻轉,并添加一定的隨機噪聲以增加泛化能力。同時由于數(shù)據(jù)樣本中的細弱電線目標在不同背景下的圖片數(shù)量不均勻,而背景干擾又是影響目標分割的最主要因素,進而對較少的背景樣本又進行了樣本平衡過采樣。
本文基于深度學習Pytorch框架下進行網(wǎng)絡模型的搭建和訓練,網(wǎng)絡權重的初始化選擇服從均值為0,標準差為1的正態(tài)分布隨機值初始化。使用改進帶類別代價敏感權重向量的交叉熵函數(shù)作為損失函數(shù)來計算輸出誤差,使用Adam優(yōu)化器用于訓練過程中的優(yōu)化。
最終的預測結果如圖3和圖4所示,采用U-net與SegNet這些目前常用的語義分割網(wǎng)絡和傳統(tǒng)的圖像分割方法與本文所提出的分割網(wǎng)絡效果作對比,圖3對同一張含高壓電線的遙感圖像進行目標分割對比實驗。圖4展示了本文所用方法在其余一些背景下的遙感圖像細弱電線目標分割結果圖示例。
圖3 遙感圖像分割結果對比示例Fig.3 Comparison of remote sensing image segmentation results
圖4 本文方法在其他遙感圖像中分割結果Fig.4 Segmentation results from other remote sensing images are presented
上述實驗內(nèi)容最終在測試集上取得94%的精確率,而使用原始的U-net網(wǎng)絡,在測試集上的精確率只有87%。從上面的圖3中可以看出,采用本文方法的預測結果與人工精細標注十分相近,能夠很好地區(qū)分背景干擾對精細目標電線分割帶來的影響,對于細弱目標如高壓電線,能夠完整地分割出遙感圖像中的感興趣目標而不會產(chǎn)生信息丟失。而且相比于常用的語義分割網(wǎng)絡U-net與SegNet, 本文提出的方法對目標的分割效果更精確,在視覺上明顯有更加優(yōu)異的效果,能更好地抵抗背景噪聲的干擾。這主要得益于代價敏感權重化目標函數(shù)和網(wǎng)絡結構上的改進,增加了模型訓練時對細弱目標的注意力,進而增加了對細弱目標的分割精度。另外,通過集成學習的多模型融合方法,使得分割精度最終得到了進一步的提升,取得了令人滿意的精細分割效果。
采用上述幾種常用的分割方法與本文方法對相同含高壓電線的遙感圖像進行目標分割,并且進一步根據(jù)圖像的評價指標包括查準率、召回率和F1系數(shù)以及Jaccard系數(shù)來對圖像分割質量進行客觀評估?;诒疚乃岢龅牡难芯糠椒?,最終評價指標Jaccard系數(shù)能夠達到90%,各方法的評價指標對比如表1所示。
表1 幾種常用分割方法評價指標對比
從表1可以看出本文所使用的Dense-Unet網(wǎng)絡在各個精度指標中均比現(xiàn)有的Unet和SegNet等網(wǎng)絡效果要更好。而且使用集成學習方法后,測試集中的各項精度指標同樣進一步取得提升,突出了本文算法整體的優(yōu)越性。在算法模型復雜度和推理時間方面。Dense-Unet的模型由于使用了更深的卷積層架構和更多的稠密連接,在模型大小上要超過Unet和SegNet方法。但是在1024×1024大小的單張圖片推理的時間上,Dense-Unet模型和其余2種網(wǎng)絡對比,在1080Ti GPU上得到的預測時間為0.125 s,相比于U-net的0.092 s和SegNet的0.103 s,模型速度上并沒有太大的差異。但由于本文使用了集成學習的方法,最終整體預測所需時間為0.32 s??紤]到實際衛(wèi)星遙感圖像在傳輸過程中,多為間隔一定時間分批次發(fā)送到地面。而衛(wèi)星每次與地面更新圖像的間隔時間遠大于本文算法處理圖像所需的時間。因此可以視為衛(wèi)星遙感圖像是離線處理的,本文方法最終能夠滿足實際遙感圖像的速度需求。
1)本文算法主要的貢獻及優(yōu)異性如下:①網(wǎng)絡模型通過加深卷積層和使用各卷積層間的稠密連接方法,加強了網(wǎng)絡對細弱目標特征的識別與利用能力,從而有效提升了遙感圖像中細弱目標的分割精度。②通過網(wǎng)絡間的批標準化處理和采用SeLU激活函數(shù),加快了網(wǎng)絡訓練時的收斂速度,避免了梯度消失現(xiàn)象的發(fā)生。③考慮到遙感圖像中細弱目標占圖片信息比例過少,存在典型的類別非均衡問題,使用了基于類別代價敏感權重的改進目標函數(shù),增強了網(wǎng)絡模型對小類別的學習能力。④最終為了進一步提升對細弱目標的分割精度,采用集成學習的方法訓練了多組網(wǎng)絡模型進行融合。
2)本文所使用方法在谷歌地圖遙感圖像測試集中對高壓電線一類細弱目標進行分割,在測試集中取得了94%的測試精確率,顯著提升了遙感圖像中細弱目標的分割效果。與現(xiàn)有常用的語義分割網(wǎng)絡U-net及SegNet相比,改進后的Dense-Unet網(wǎng)絡與集成學習方法在處理遙感圖像細弱目標時,具有更好的分割精度和更優(yōu)異的視覺感知效果,
由于本文算法上述的優(yōu)異性,除了對于遙感圖像中高壓輸電線路和同類細弱目標有精準的分割效果之外,本文算法對于其他圖像中存在的受背景干擾較大、目標占圖像信息較少的小類別目標同樣有較好的分割效果。后續(xù)的研究將進一步嘗試探索本文方法在更多情景圖像中的目標分割效果。