趙銀娣,衛(wèi)虹宇,董霽紅,董暢
1.中國礦業(yè)大學(xué) 環(huán)境與測繪學(xué)院,徐州221116;
2.自然資源部退化及未利用土地整治工程重點實驗室,西安710075
露天煤礦區(qū)場景識別是露天礦地質(zhì)環(huán)境監(jiān)管工作的重要內(nèi)容之一。露天開采對生態(tài)環(huán)境的破壞極其嚴重,容易導(dǎo)致地質(zhì)災(zāi)害和環(huán)境污染等一系列問題,利用高分辨率遙感影像識別露天煤礦區(qū),一方面可以為突發(fā)災(zāi)害提供決策依據(jù),另一方面有利于為礦區(qū)的土地管理和土地復(fù)墾規(guī)劃提供相應(yīng)幫助(胡振琪和謝宏全,2005;張凱翔,
2018)。
在遙感影像上識別露天煤礦區(qū),早期的方法主要依賴目視解譯(畢如田等,2008),但是存在識別精度不高、工作效率較低等問題。針對這些問題,國內(nèi)外學(xué)者提出了許多方法,主要分為基于像元的分類方法(程璐,2017)和面向?qū)ο蟮姆诸惙椒ǎㄗU窠?010)。這兩類方法有效提高了露天煤礦區(qū)的識別精度和識別效率,但也存在一些問題(張峰極,2019)?;谙裨姆诸惙椒o法從整體上解譯影像的空間、紋理等特征,容易產(chǎn)生信息冗余,面向?qū)ο蟮姆诸惙椒ㄐ枰藶榇_定分類規(guī)則,受人的主觀因素影響較大。隨著遙感影像分辨率的不斷提高,場景中包含的語義信息愈加豐富,給露天煤礦區(qū)識別帶來了更多挑戰(zhàn)。
近年來,場景識別技術(shù)(姜嘯遠,2017)不斷發(fā)展,可以更好的提取露天煤礦區(qū)場景中包含的多類特征。起初,研究者采用各種底層特征用于場景識別,例如SIFT(Scale-Invariant Feature Transform)、HOG(Histogram of Oriented Gradient)、BoW(Bag of Words)等,這些方法具有良好的邏輯性,但是提取的特征泛化性不強,且在大量、多類場景信息的特征提取中效率較低(Zuo等,2014)。自AlexNet(Krizhevsky等,2012)使用卷積 神 經(jīng) 網(wǎng) 絡(luò)CNN(Convolutional Neural Network)大幅提高了圖像分類的準確率,VGG(Simonyan和Zisserman,2015)、Inception(Szegedy等,2015;Ioffe和Szegedy,2015)、ResNet(He等,2016)等深度卷積網(wǎng)絡(luò)相繼提出,在特征提?。ㄥX曉亮等,2018)、圖像分類(張康等,2018)、場景識別(許夙暉等,2016)等領(lǐng)域取得了不錯的成效。與傳統(tǒng)方法相比,CNN提取的特征能夠包含豐富的語義信息和結(jié)構(gòu)信息,且對于平移、縮放等變形具有高度不變性,泛化能力強(楊鵬等,2018),因此本文采用場景識別技術(shù),利用CNN模型提取的深層特征進行場景分類,從而識別出露天煤礦區(qū)。
露天煤礦區(qū)占地面積大且地物類別豐富,在高分辨率遙感影像上具有特征量大、特征多樣的特點(張成業(yè)等,2022),對整個礦區(qū)場景進行特征學(xué)習(xí)并識別,給設(shè)備的計算能力提出了更高的要求。為了減少計算損耗,本文將場景劃分為多個子區(qū)域,對露天煤礦區(qū)場景和非露天煤礦區(qū)場景的子區(qū)域進行特征學(xué)習(xí),通過識別屬于露天煤礦區(qū)場景的子區(qū)域從而識別出該場景。目前場景識別廣泛使用單標簽學(xué)習(xí)的策略(馮權(quán)瀧等,2022),由于露天煤礦區(qū)場景子區(qū)域包含的地物在類別、位置、大小和形狀等方面存在較大差異,并且不同地物間還存在遮擋問題,難以提取有效特征。
隨著計算機視覺任務(wù)趨于多樣化和復(fù)雜化,多標簽學(xué)習(xí)(Tsoumakas和Katakis,2007;Zhang和Zhou,2014;陳智,2015)已逐漸成為機器學(xué)習(xí)領(lǐng)域的熱點研究問題之一。不同于單標簽學(xué)習(xí)中每個樣本僅屬于一個類別標簽,多標簽學(xué)習(xí)是通過學(xué)習(xí)有多個類別標簽的數(shù)據(jù)來預(yù)測未知樣本所屬的標簽集合?;诖?,本文提出一種基于子區(qū)域多標簽學(xué)習(xí)的露天煤礦區(qū)場景識別方法,通過學(xué)習(xí)露天煤礦區(qū)場景子區(qū)域中包含的多類標簽的特征并進行多標簽分類,再基于該場景區(qū)別于其他場景的標簽進行分析,從而識別出所有屬于該場景的子區(qū)域以構(gòu)成整個場景。礦產(chǎn)資源開發(fā)要素(宋亞婷等,2016)主要包括采掘區(qū)、剝離區(qū)、邊幫、排土場、廢渣場、中轉(zhuǎn)場地,這6類礦區(qū)標簽是露天煤礦區(qū)場景區(qū)別于非露天煤礦區(qū)場景的主要標簽,另外,還設(shè)置了道路、水域、耕地、林地、草地、裸地、建筑物這7類非礦區(qū)標簽與礦區(qū)標簽進行區(qū)分,將露天煤礦區(qū)場景和非露天煤礦區(qū)場景的子區(qū)域都標注13類標簽構(gòu)成多標簽數(shù)據(jù)集。鑒于Inception-v3(Szegedy等,2016)模型在ImageNet數(shù)據(jù)集上具有良好的特征提取能力,對Inception-v3模型進行改進,使其能夠自動學(xué)習(xí)并提取多類標簽的有效特征,訓(xùn)練該模型從而對子區(qū)域包含的多類標簽進行預(yù)測。數(shù)據(jù)集中具有礦區(qū)標簽的子區(qū)域即為露天煤礦區(qū)場景的子區(qū)域,但是在多標簽預(yù)測時存在誤差,需要分析子區(qū)域中的多標簽預(yù)測結(jié)果對子區(qū)域進行判定,為此設(shè)計了一種場景子區(qū)域判定算法,結(jié)合地理學(xué)第一定律,根據(jù)礦區(qū)標簽的標簽相關(guān)性和標簽完整性以判定該子區(qū)域是否屬于露天煤礦區(qū)場景,識別出的子區(qū)域構(gòu)成露天煤礦區(qū)場景。
本文方法主要由基于多標簽學(xué)習(xí)的卷積神經(jīng)網(wǎng)絡(luò)和場景子區(qū)域判定算法兩部分組成。用基于多標簽學(xué)習(xí)的卷積神經(jīng)網(wǎng)絡(luò)對數(shù)據(jù)集中子區(qū)域包含的多類標簽進行學(xué)習(xí),將輸入影像劃分為相同大小的子區(qū)域并進行多標簽分類,采用場景子區(qū)域判定算法,根據(jù)分類結(jié)果判定子區(qū)域是否屬于露天煤礦區(qū)場景,識別出的子區(qū)域構(gòu)成露天煤礦區(qū)場景。
CNN在單標簽學(xué)習(xí)任務(wù)中獲得了優(yōu)異的性能,然而,由于底層圖像的復(fù)雜性和多標簽訓(xùn)練數(shù)據(jù)的缺乏,如何更好地利用CNN處理多標簽圖像仍然是一個有待解決的問題(Shahriyar等,2018),本文對CNN模型進行改進以適應(yīng)多類標簽。
如圖1所示,將CNN中經(jīng)典模型之一的Inception-v3模型作為源模型,使用公開數(shù)據(jù)集ImageNet預(yù)訓(xùn)練模型對CNN模型的參數(shù)進行初始化,將露天煤礦區(qū)多標簽數(shù)據(jù)集導(dǎo)入該模型,將最后一層全連接層的輸出節(jié)點數(shù)調(diào)整為實驗數(shù)據(jù)集的類別數(shù),采用反向傳播算法訓(xùn)練最后一層,通過參數(shù)遷移以得到更豐富的圖像特征表示。為了使CNN模型可以學(xué)習(xí)多個語義標簽并加快參數(shù)的更新速度,在CNN模型輸出層采用Sigmoid函數(shù)作為輸出層的激活函數(shù)(Kurata等,2016),并且使用Sigmoid交叉熵損失函數(shù)代替單標簽損失函數(shù)對模型進行訓(xùn)練優(yōu)化。對于N個樣本和K類標簽,損失函數(shù)J表達式如下:
圖1 基于多標簽學(xué)習(xí)的卷積神經(jīng)網(wǎng)絡(luò)Fig.1 Convolutional neural network based on multi-label learning
其反向傳播導(dǎo)數(shù)為
式中,xn表示第n個樣本,表示xn對應(yīng)標簽集合中的第k個標簽,h(xn)表示Sigmoid函數(shù),其數(shù)學(xué)表達式為
設(shè)某類場景A共有p類核心標簽,多標簽數(shù)據(jù)集共標注q(q>p)類標簽,為了判定每個子區(qū)域是否屬于場景A,本文設(shè)計了一種場景子區(qū)域判定算法,圖2為算法流程,算法的主要思想如下:
圖2 場景子區(qū)域判定算法流程Fig.2 Flowchart of the scene sub-region determination algorithm
(1)獲取相關(guān)標簽集合。給定包含I個樣本的多標簽訓(xùn)練集Dtrain={(xi,Yi)|i=1,2,…,I},其中Yi={yi1,yi2,…,yiq}是樣本xi的q類標簽集合。所有樣本的標簽集合L={l1,l2,…,lq}是一個q維的隨機變量,任意la和lb的相關(guān)系數(shù)ρab(a,b=1,2,…,q)計算公式為
式中,D(la)、D(lb)分別為la、lb的方差,E(la)、E(lb)分別為la、lb的期望。
為了確定標簽間的關(guān)聯(lián)程度,對于每類標簽la,取其所有相關(guān)系數(shù)(除1以外)的平均值作為閾值θ,僅考慮ρab大于等于閾值θ的標簽,因此,標簽la的相關(guān)標簽集合為
(2)獲取子區(qū)域的多標簽分類結(jié)果。將輸入圖像劃分為相同大小的子區(qū)域,得到包含T個子區(qū)域的多標簽測試集將其輸入訓(xùn)練好的基于多標簽學(xué)習(xí)的CNN模型進行q類 多 標 簽 分 類,得 到 子 區(qū) 域的 預(yù) 測 標 簽
(3)根據(jù)核心標簽的標簽相關(guān)性對子區(qū)域進行第一次判定。根據(jù)地理學(xué)第一定律,在空間上越靠近的事物或現(xiàn)象就越相似,對每個子區(qū)域分析其是否存在核心標簽以及子區(qū)域周邊是否存在該核心標簽的相關(guān)標簽,若是則提取該子區(qū)域。子區(qū)域關(guān)于核心標簽的預(yù)測標簽對于每個標簽其相關(guān)標簽集合為子區(qū)域的8個鄰域集合為關(guān)于核心標簽的預(yù)測標簽假設(shè)γt為每個子區(qū)域與其8個鄰域的關(guān)于核心標簽的相關(guān)標簽總數(shù),計算公式如下:
(4)根據(jù)核心標簽的標簽完整性對提取的子區(qū)域進行第二次判定。由于多標簽分類存在誤差,需要過濾掉一部分有誤的數(shù)據(jù)。將DA中相連的子區(qū)域x?t分別合并到一個集合,得到包含R個獨立區(qū)域的子區(qū)域集合DR={Dr|r=1,2,…,R}。由于場景A包含p類核心標簽,遍歷集合DR中每個獨立的區(qū)域Dr,若p類標簽都存在,則判定Dr中的每個子區(qū)域?qū)儆趫鼍癆。
3.1.1 研究區(qū)概況
選擇勝利煤田(馬蕭,2011)的西露天煤礦區(qū)作為研究區(qū),該區(qū)域煤炭資源豐富,露天煤礦分布比較集中。研究區(qū)所處位置為內(nèi)蒙古高原中部,大興安嶺西側(cè)的北坡,整體地形分布西北高、東南低,東西兩側(cè)高差較大。該區(qū)域?qū)僦袦貛О敫珊荡箨懶约撅L(fēng)氣候,年均氣溫1.7℃、降水量294.74 mm。研究區(qū)大都是高臺階開采,容易誘發(fā)坍塌、高空墜落等事故,并且開采過程中產(chǎn)生的廢渣會對地形地貌景觀造成不同程度的破壞。研究區(qū)影像為谷歌影像,如圖3所示。
圖3 研究區(qū)遙感影像圖Fig.3 Remote sensing image of the study area
3.1.2 數(shù)據(jù)集
本文數(shù)據(jù)集可用在多標簽學(xué)習(xí)和單標簽學(xué)習(xí)中,實驗數(shù)據(jù)裁剪自谷歌影像,數(shù)據(jù)集由露天煤礦區(qū)場景和非露天煤礦區(qū)場景的子區(qū)域構(gòu)成,共9768張圖像。如圖4所示,若采用多標簽學(xué)習(xí),共包含13類標簽,其中有6類礦區(qū)標簽:采掘區(qū)、剝離區(qū)、邊幫、排土場、廢渣場、中轉(zhuǎn)場地,有7類非礦區(qū)標簽:道路、水域、耕地、林地、草地、裸地、建筑物。圖4顯示了每張圖像包含的多類標簽,圖像由獨熱編碼的方式進行標注。若采用單標簽學(xué)習(xí),數(shù)據(jù)集分為露天煤礦區(qū)場景子區(qū)域和非露天煤礦區(qū)場景子區(qū)域這兩類,其中具有礦區(qū)標簽的數(shù)據(jù)屬于露天煤礦區(qū)場景子區(qū)域。為了使一張圖像涵蓋多類標簽,數(shù)據(jù)均裁剪為500×500像素大小的圖像,每類圖像數(shù)量不均衡,標簽分布如圖5所示。
圖4 多標簽數(shù)據(jù)集示例Fig.4 Demonstration of the multi-label learning dataset
圖5 標簽分布圖Fig.5 Distribution of labels
本文使用的評價指標包括準確率(Precision)、召回率(Recall)、F1分數(shù)(F1-Score)和F2分數(shù)(F2-Score),定義如下:
式中,p是準確率,r是召回率,TP為真正樣本,F(xiàn)P為假正樣本,F(xiàn)N為假負樣本。
在子區(qū)域多標簽分類中采用F2分數(shù)進行多標簽閾值優(yōu)化,采用準確率、召回率評估各標簽的分類效果,以分析多標簽分類對后續(xù)數(shù)據(jù)處理的影響。采用召回率、準確率和F1分數(shù)來評估露天煤礦區(qū)場景子區(qū)域的識別效果(宋仁忠等,2022),F(xiàn)1分數(shù)的值若等于1,說明所有屬于露天煤礦區(qū)場景的子區(qū)域被識別出來,即識別出整個露天煤礦區(qū)場景。
3.3.1 子區(qū)域多標簽分類
將多標簽數(shù)據(jù)集按8∶2劃分為訓(xùn)練集和測試集,在訓(xùn)練集上采用5折交叉驗證法訓(xùn)練模型。實驗采用I5處理器,運行內(nèi)存為10 G,結(jié)合NVIDIA GTX 1060(6 GB顯存)GPU,在Ubuntu16.04系統(tǒng)上搭建CUDA9.0和CUDNN7.5的GPU運行環(huán)境,采用Pytorch深度學(xué)習(xí)框架訓(xùn)練模型。訓(xùn)練時先使用公開數(shù)據(jù)集ImageNet預(yù)訓(xùn)練模型對Inception-v3模型參數(shù)進行初始化,再將最后一層全連接層的類別參數(shù)調(diào)整為實驗數(shù)據(jù)集的類別數(shù),將輸出層的激活函數(shù)替換為Sigmoid函數(shù)。采用隨機梯度下降優(yōu)化器進行參數(shù)優(yōu)化,動量為0.9,初始學(xué)習(xí)率為0.001,權(quán)重衰減系數(shù)為0.1(Dogo等,2016)。由于本實驗需要將測試集的大部分類別預(yù)測出來以進行后續(xù)分析,每次訓(xùn)練結(jié)束后對每個類別基于F2分數(shù)進行閾值優(yōu)化,搜索從0.01到1的100個潛在值作為每個標簽的閾值,找到使F2分數(shù)最高的相應(yīng)類別的閾值,根據(jù)閾值進行判定得到分類結(jié)果(Williams,2021)。
分析基于多標簽學(xué)習(xí)的Inception-v3模型在測試集上生成的每類標簽的準確率和召回率,如圖6所示,大部分標簽的召回率明顯高于準確率,這是由于本文選擇了專門針對F2分數(shù)優(yōu)化的閾值,確保大部分標簽分類正確以提高后續(xù)數(shù)據(jù)處理的精度。采掘區(qū)、中轉(zhuǎn)場地和建筑物這3類標簽的準確率和召回率相差較小,是因為這3類的特征明顯,提取的特征表征能力強且在分類過程中不容易與其他類特征混淆。相比于礦區(qū)標簽,大部分非礦區(qū)標簽的準確率和召回率偏高,主要是本文數(shù)據(jù)集的標簽分布不均衡,非礦區(qū)標簽在數(shù)據(jù)集中的占比較大造成的。
圖6 子區(qū)域多標簽分類結(jié)果Fig.6 Results of sub-region multi-label classification
將研究區(qū)遙感影像劃分為相同大小的子區(qū)域,用訓(xùn)練的基于多標簽學(xué)習(xí)的Inception-v3模型對子區(qū)域進行多標簽分類,圖7展示了部分子區(qū)域的多標簽預(yù)測結(jié)果,黃色框代表錯誤預(yù)測的標簽,藍色框代表沒有預(yù)測出來的標簽。可以看到每個子區(qū)域包括多類標簽,大部分標簽分類正確,說明該多標簽分類模型能從具有多類標簽的樣本中提取出有效的特征。對于分類有誤的標簽,模型對采掘區(qū)、水域和廢渣場容易混淆,對邊幫容易誤分為道路,由于本文方法主要基于礦區(qū)標簽進行分析,礦區(qū)標簽預(yù)測錯誤對場景子區(qū)域判定的精度有一定影響。
圖7 研究區(qū)遙感影像的子區(qū)域多標簽分類部分結(jié)果Fig.7 Partial results of multi-label classification of remote sensing image sub-regions in the study area
3.3.2 露天煤礦區(qū)場景識別
對研究區(qū)遙感影像的子區(qū)域進行識別,得到的結(jié)果如表1所示。表1中對比了本文方法和單標簽學(xué)習(xí)算法對露天煤礦區(qū)場景子區(qū)域的識別結(jié)果??梢钥吹?,單標簽學(xué)習(xí)算法的最優(yōu)F1分數(shù)為0.777,而本文子區(qū)域多標簽分類F1分數(shù)達到0.857,其與單標簽學(xué)習(xí)中性能最好的ResNet50模型相比,提高了8個百分點,說明該方法在露天煤礦區(qū)場景子區(qū)域識別中具有明顯優(yōu)勢,識別能力更強。分析其原因,若采用單標簽學(xué)習(xí)算法,把子區(qū)域分為露天煤礦區(qū)場景子區(qū)域和非露天煤礦區(qū)場景子區(qū)域,由于露天煤礦區(qū)場景子區(qū)域中包含非露天煤礦區(qū)場景子區(qū)域的一些地物,在特征提取中容易混淆,從而影響識別結(jié)果。而本文方法采用了多標簽學(xué)習(xí)策略,能夠?qū)W習(xí)到露天煤礦區(qū)場景子區(qū)域中區(qū)別于非露天煤礦場景子區(qū)域的礦區(qū)標簽,再結(jié)合礦區(qū)標簽對子區(qū)域進行判定從而識別出露天煤礦區(qū)場景子區(qū)域。
此外,表1中本文方法的準確率達到最優(yōu)精度,而召回率比準確率低了0.085,這主要是受子區(qū)域多標簽分類的影響,結(jié)合圖6進行分析,多標簽分類模型對各類標簽的召回率偏高,可以保證大部分標簽預(yù)測正確,從而在露天煤礦區(qū)場景子區(qū)域識別中與非露天煤礦區(qū)場景子區(qū)域更好地區(qū)分,所以對露天煤礦區(qū)場景子區(qū)域識別的準確率較高,但是多標簽分類中預(yù)測礦區(qū)標簽的準確率不高,若沒有預(yù)測出子區(qū)域包含的礦區(qū)標簽,場景子區(qū)域判定算法就會將該子區(qū)域識別為非露天煤礦場景子區(qū)域,使得召回率降低。
表1 露天煤礦區(qū)場景子區(qū)域識別結(jié)果對比Table 1 Comparison of scene sub-region recognition results in opencast coal mine areas
本文通過識別屬于場景的子區(qū)域從而識別出整個場景,圖8顯示了研究區(qū)遙感影像的露天煤礦區(qū)場景識別結(jié)果,紅色區(qū)域代表由識別出的子區(qū)域構(gòu)成的露天煤礦區(qū)場景。將每種方法得到的識別圖與真值圖進行對比,單標簽學(xué)習(xí)算法誤將多個非露天煤礦區(qū)場景的子區(qū)域識別為露天煤礦區(qū)場景的子區(qū)域,而本文方法的識別結(jié)果接近真值,證明該方法在露天煤礦區(qū)場景識別中的有效性。
圖8 露天煤礦區(qū)場景識別結(jié)果對比Fig.8 Comparison of scene recognition results in opencast coal mine areas
本文將露天煤礦區(qū)場景劃分為多個子區(qū)域進行特征學(xué)習(xí)和識別,針對單標簽學(xué)習(xí)算法在場景子區(qū)域識別中識別率較低的問題,將多標簽學(xué)習(xí)策略和地理學(xué)第一定律相結(jié)合,提出一種基于場景子區(qū)域多標簽學(xué)習(xí)的場景識別算法。將場景劃分為相同大小的子區(qū)域并標注多類標簽,為了學(xué)習(xí)子區(qū)域內(nèi)多類標簽的特征,對Inception-v3模型進行改進使其適用于多類標簽的數(shù)據(jù)。為了對子區(qū)域包含的多標簽預(yù)測結(jié)果進行分析從而識別出屬于露天煤礦區(qū)場景的子區(qū)域,設(shè)計了一種場景子區(qū)域判定算法,判定子區(qū)域是否屬于露天煤礦區(qū)場景從而識別出露天煤礦區(qū)場景。實驗結(jié)果表明:
(1)基于多標簽學(xué)習(xí)的Inception-v3模型能夠自動學(xué)習(xí)并提取有效的多類標簽的特征,但該模型對礦區(qū)標簽的預(yù)測錯誤會導(dǎo)致露天煤礦場景子區(qū)域識別的召回率降低;
(2)利用地理學(xué)第一定律對多標簽分類結(jié)果進行分析從而識別露天煤礦區(qū)場景子區(qū)域,相比單標簽學(xué)習(xí)算法的最優(yōu)F1分數(shù),本文方法的F1分數(shù)提高了8個百分點;
(3)在研究區(qū)遙感影像上對露天煤礦區(qū)場景進行識別,本文方法的識別結(jié)果接近真值,證明該方法在露天煤礦區(qū)場景識別中的有效性。
本文方法是先進行多標簽分類,再對分類結(jié)果進行分析以完成識別任務(wù),后續(xù)還可以嘗試算法優(yōu)化以實現(xiàn)框架一體化;子區(qū)域多標簽分類結(jié)果對露天煤礦場景子區(qū)域識別有一定影響,可以嘗試其他算法提高多標簽分類精度,以獲得更好的場景識別效果;實驗所用數(shù)據(jù)集標簽分布不均衡,可以通過優(yōu)化樣本以提高模型精度。另外,本文提出的方法也可以對研究區(qū)的多時相數(shù)據(jù)進行識別,以探究露天煤礦區(qū)范圍的變化情況,為露天煤礦開采管理提供數(shù)據(jù)支撐。